postboost 1.56.0 → 1.57.1

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 (968) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +14 -1
  3. data/docs/FreeToolBuildHashtagGroupsRequest.md +26 -0
  4. data/docs/FreeToolBuildHashtagGroupsResponse.md +28 -0
  5. data/docs/FreeToolBuildHashtagGroupsResponseGroupsInner.md +22 -0
  6. data/docs/FreeToolBuildHashtagGroupsResponseRemovedInner.md +20 -0
  7. data/docs/FreeToolCalculateSmmPricingRequest.md +34 -0
  8. data/docs/FreeToolCalculateSmmPricingResponse.md +36 -0
  9. data/docs/FreeToolCalculateSmmPricingResponseLineItemsInner.md +24 -0
  10. data/docs/FreeToolCalculateSmmPricingResponseRange.md +20 -0
  11. data/docs/FreeToolFindAutomationRecipesResponse.md +22 -0
  12. data/docs/FreeToolFindAutomationRecipesResponseRecipesInner.md +32 -0
  13. data/docs/FreeToolFindAutomationRecipesResponseRecipesInnerApiOperationsInner.md +20 -0
  14. data/docs/FreeToolFindAutomationRecipesResponseRecipesInnerNative.md +22 -0
  15. data/docs/FreeToolFindAutomationRecipesResponseRecipesInnerSteps.md +22 -0
  16. data/docs/FreeToolGenerateAltTextRequest.md +26 -0
  17. data/docs/FreeToolGenerateAltTextResponse.md +24 -0
  18. data/docs/FreeToolGenerateBioRequest.md +28 -0
  19. data/docs/FreeToolGenerateBioResponse.md +22 -0
  20. data/docs/FreeToolGenerateCaptionRequest.md +3 -1
  21. data/docs/FreeToolGenerateCaptionResponse.md +1 -1
  22. data/docs/FreeToolGenerateLinkedInHeadlineRequest.md +26 -0
  23. data/docs/FreeToolGenerateLinkedInHeadlineResponse.md +22 -0
  24. data/docs/FreeToolGenerateUsernamesRequest.md +26 -0
  25. data/docs/FreeToolGenerateUsernamesResponse.md +26 -0
  26. data/docs/FreeToolGenerateUsernamesResponseRules.md +22 -0
  27. data/docs/FreeToolGenerateUsernamesResponseUsernamesInner.md +20 -0
  28. data/docs/FreeToolGenerateYoutubeDescriptionRequest.md +28 -0
  29. data/docs/FreeToolGenerateYoutubeDescriptionResponse.md +22 -0
  30. data/docs/FreeToolGenerateYoutubeTitlesRequest.md +22 -0
  31. data/docs/FreeToolGenerateYoutubeTitlesResponse.md +22 -0
  32. data/docs/FreeToolGetGlossaryResponse.md +22 -0
  33. data/docs/FreeToolGetGlossaryResponseTermsInner.md +38 -0
  34. data/docs/FreeToolPickSocialMediaToolRequest.md +20 -0
  35. data/docs/FreeToolPickSocialMediaToolResponse.md +24 -0
  36. data/docs/FreeToolPickSocialMediaToolResponseResultsInner.md +36 -0
  37. data/docs/FreeToolSummarizeReportRequest.md +18 -0
  38. data/docs/FreeToolSummarizeReportRequestRowsInner.md +34 -0
  39. data/docs/FreeToolSummarizeReportResponse.md +36 -0
  40. data/docs/FreeToolSummarizeReportResponseDateRange.md +20 -0
  41. data/docs/FreeToolSummarizeReportResponseNetworksInner.md +26 -0
  42. data/docs/FreeToolSummarizeReportResponseTopPostsInner.md +24 -0
  43. data/docs/FreeToolSummarizeReportResponseWeekdaysInner.md +24 -0
  44. data/docs/FreeToolVerifyWebhookSignatureRequest.md +28 -0
  45. data/docs/FreeToolVerifyWebhookSignatureResponse.md +22 -0
  46. data/docs/FreeToolsApi.md +885 -5
  47. data/docs/GetRemoteUploadStatus200Response.md +7 -3
  48. data/docs/GetRemoteUploadStatus404Response.md +20 -0
  49. data/docs/InitiateRemoteUpload200Response.md +24 -0
  50. data/docs/MediaApi.md +6 -6
  51. data/docs/PostContent.md +1 -1
  52. data/lib/postboost/api/account_groups_api.rb +1 -1
  53. data/lib/postboost/api/accounts_api.rb +1 -1
  54. data/lib/postboost/api/activity_api.rb +1 -1
  55. data/lib/postboost/api/agents_api.rb +1 -1
  56. data/lib/postboost/api/ai_api.rb +1 -1
  57. data/lib/postboost/api/analytics_api.rb +1 -1
  58. data/lib/postboost/api/competitors_api.rb +1 -1
  59. data/lib/postboost/api/free_tools_api.rb +916 -19
  60. data/lib/postboost/api/hashtag_groups_api.rb +1 -1
  61. data/lib/postboost/api/inbox_api.rb +1 -1
  62. data/lib/postboost/api/media_api.rb +8 -8
  63. data/lib/postboost/api/mentions_api.rb +1 -1
  64. data/lib/postboost/api/posting_schedule_api.rb +1 -1
  65. data/lib/postboost/api/posts_api.rb +1 -1
  66. data/lib/postboost/api/receipts_api.rb +1 -1
  67. data/lib/postboost/api/subscriptions_api.rb +1 -1
  68. data/lib/postboost/api/tags_api.rb +1 -1
  69. data/lib/postboost/api/templates_api.rb +1 -1
  70. data/lib/postboost/api/users_api.rb +1 -1
  71. data/lib/postboost/api/webhooks_api.rb +1 -1
  72. data/lib/postboost/api/workspaces_api.rb +1 -1
  73. data/lib/postboost/api_client.rb +1 -1
  74. data/lib/postboost/api_error.rb +1 -1
  75. data/lib/postboost/configuration.rb +1 -1
  76. data/lib/postboost/models/account.rb +1 -1
  77. data/lib/postboost/models/account_analytics.rb +1 -1
  78. data/lib/postboost/models/account_analytics_initial_sync.rb +1 -1
  79. data/lib/postboost/models/account_connection_health.rb +1 -1
  80. data/lib/postboost/models/account_connection_health_reconnect_reason.rb +1 -1
  81. data/lib/postboost/models/account_errors_inner.rb +1 -1
  82. data/lib/postboost/models/account_errors_inner_one_of.rb +1 -1
  83. data/lib/postboost/models/account_group.rb +1 -1
  84. data/lib/postboost/models/account_group_input.rb +1 -1
  85. data/lib/postboost/models/account_health.rb +1 -1
  86. data/lib/postboost/models/account_health_daily_cap.rb +1 -1
  87. data/lib/postboost/models/account_schedule.rb +1 -1
  88. data/lib/postboost/models/add_competitor202_response.rb +1 -1
  89. data/lib/postboost/models/add_competitor409_response.rb +1 -1
  90. data/lib/postboost/models/add_generic_subscription_request.rb +1 -1
  91. data/lib/postboost/models/add_post_to_queue_request.rb +1 -1
  92. data/lib/postboost/models/agent_page_meta.rb +1 -1
  93. data/lib/postboost/models/agent_proposal.rb +1 -1
  94. data/lib/postboost/models/agent_proposal_decision.rb +1 -1
  95. data/lib/postboost/models/agent_run.rb +1 -1
  96. data/lib/postboost/models/ai_credits.rb +1 -1
  97. data/lib/postboost/models/ai_usage.rb +1 -1
  98. data/lib/postboost/models/ai_usage_text.rb +1 -1
  99. data/lib/postboost/models/analytics_period.rb +1 -1
  100. data/lib/postboost/models/analytics_summary.rb +1 -1
  101. data/lib/postboost/models/analytics_summary_data.rb +1 -1
  102. data/lib/postboost/models/api_activity.rb +1 -1
  103. data/lib/postboost/models/api_activity_outcome.rb +1 -1
  104. data/lib/postboost/models/api_key.rb +1 -1
  105. data/lib/postboost/models/api_key_ability.rb +1 -1
  106. data/lib/postboost/models/api_key_input.rb +1 -1
  107. data/lib/postboost/models/approve_agent_proposal200_response.rb +1 -1
  108. data/lib/postboost/models/approve_agent_proposal409_response.rb +1 -1
  109. data/lib/postboost/models/approve_inbox_reply_draft403_response.rb +1 -1
  110. data/lib/postboost/models/approve_post_request.rb +1 -1
  111. data/lib/postboost/models/best_posting_times.rb +1 -1
  112. data/lib/postboost/models/best_posting_times_times_inner.rb +1 -1
  113. data/lib/postboost/models/blog_to_social200_response.rb +1 -1
  114. data/lib/postboost/models/blog_to_social429_response.rb +1 -1
  115. data/lib/postboost/models/blog_to_social_caption.rb +1 -1
  116. data/lib/postboost/models/blog_to_social_input.rb +1 -1
  117. data/lib/postboost/models/blog_to_social_media.rb +1 -1
  118. data/lib/postboost/models/blog_to_social_response.rb +1 -1
  119. data/lib/postboost/models/brand_voice.rb +1 -1
  120. data/lib/postboost/models/brand_voice_input.rb +1 -1
  121. data/lib/postboost/models/brand_voice_meta.rb +1 -1
  122. data/lib/postboost/models/cancel_subscription422_response.rb +1 -1
  123. data/lib/postboost/models/cancel_subscription422_response_errors.rb +1 -1
  124. data/lib/postboost/models/cancel_subscription_request.rb +1 -1
  125. data/lib/postboost/models/change_subscription_plan_request.rb +1 -1
  126. data/lib/postboost/models/channel_account.rb +1 -1
  127. data/lib/postboost/models/checkout_subscription200_response.rb +1 -1
  128. data/lib/postboost/models/checkout_subscription_request.rb +1 -1
  129. data/lib/postboost/models/coded_error.rb +1 -1
  130. data/lib/postboost/models/competitor.rb +1 -1
  131. data/lib/postboost/models/competitor_detail.rb +1 -1
  132. data/lib/postboost/models/competitor_input.rb +1 -1
  133. data/lib/postboost/models/competitor_media.rb +1 -1
  134. data/lib/postboost/models/competitor_snapshot.rb +1 -1
  135. data/lib/postboost/models/complete_chunked_upload_request.rb +1 -1
  136. data/lib/postboost/models/connect_channel_input.rb +1 -1
  137. data/lib/postboost/models/connect_link.rb +1 -1
  138. data/lib/postboost/models/create_account_group201_response.rb +1 -1
  139. data/lib/postboost/models/create_agent201_response.rb +1 -1
  140. data/lib/postboost/models/create_api_key201_response.rb +1 -1
  141. data/lib/postboost/models/create_api_key201_response_data.rb +1 -1
  142. data/lib/postboost/models/create_connect_link_request.rb +1 -1
  143. data/lib/postboost/models/create_hashtag_group201_response.rb +1 -1
  144. data/lib/postboost/models/create_inbox_reply_draft201_response.rb +1 -1
  145. data/lib/postboost/models/create_media_folder_request.rb +1 -1
  146. data/lib/postboost/models/create_mention201_response.rb +1 -1
  147. data/lib/postboost/models/create_post201_response.rb +1 -1
  148. data/lib/postboost/models/create_recycling_rule201_response.rb +1 -1
  149. data/lib/postboost/models/create_report_export201_response.rb +1 -1
  150. data/lib/postboost/models/create_reseller_client201_response.rb +1 -1
  151. data/lib/postboost/models/create_rss_feed201_response.rb +1 -1
  152. data/lib/postboost/models/create_template201_response.rb +1 -1
  153. data/lib/postboost/models/create_webhook_subscription201_response.rb +1 -1
  154. data/lib/postboost/models/create_webhook_subscription201_response_data.rb +1 -1
  155. data/lib/postboost/models/delete_agent200_response.rb +1 -1
  156. data/lib/postboost/models/delete_media_bulk_request.rb +1 -1
  157. data/lib/postboost/models/delete_media_bulk_request_items_inner.rb +1 -1
  158. data/lib/postboost/models/delete_media_folder_request.rb +1 -1
  159. data/lib/postboost/models/delete_mode.rb +1 -1
  160. data/lib/postboost/models/delete_post_request.rb +1 -1
  161. data/lib/postboost/models/delete_posts_bulk_request.rb +1 -1
  162. data/lib/postboost/models/delete_receipts_bulk_request.rb +1 -1
  163. data/lib/postboost/models/delete_result.rb +1 -1
  164. data/lib/postboost/models/delete_user400_response.rb +1 -1
  165. data/lib/postboost/models/delete_users_bulk_request.rb +1 -1
  166. data/lib/postboost/models/delete_workspaces_bulk_request.rb +1 -1
  167. data/lib/postboost/models/free_tool_build_hashtag_groups_request.rb +373 -0
  168. data/lib/postboost/models/free_tool_build_hashtag_groups_response.rb +271 -0
  169. data/lib/postboost/models/free_tool_build_hashtag_groups_response_groups_inner.rb +236 -0
  170. data/lib/postboost/models/free_tool_build_hashtag_groups_response_removed_inner.rb +257 -0
  171. data/lib/postboost/models/free_tool_build_utm_url_request.rb +1 -1
  172. data/lib/postboost/models/free_tool_build_utm_url_response.rb +1 -1
  173. data/lib/postboost/models/free_tool_calculate_aspect_ratio_request.rb +1 -1
  174. data/lib/postboost/models/free_tool_calculate_aspect_ratio_response.rb +1 -1
  175. data/lib/postboost/models/free_tool_calculate_aspect_ratio_response_matches_inner.rb +1 -1
  176. data/lib/postboost/models/free_tool_calculate_aspect_ratio_response_rounding.rb +1 -1
  177. data/lib/postboost/models/free_tool_calculate_carousel_slices_request.rb +1 -1
  178. data/lib/postboost/models/free_tool_calculate_carousel_slices_response.rb +1 -1
  179. data/lib/postboost/models/free_tool_calculate_carousel_slices_response_output.rb +1 -1
  180. data/lib/postboost/models/free_tool_calculate_carousel_slices_response_slides_inner.rb +1 -1
  181. data/lib/postboost/models/free_tool_calculate_crop_request.rb +1 -1
  182. data/lib/postboost/models/free_tool_calculate_crop_response.rb +1 -1
  183. data/lib/postboost/models/free_tool_calculate_crop_response_crop.rb +1 -1
  184. data/lib/postboost/models/free_tool_calculate_crop_response_image.rb +1 -1
  185. data/lib/postboost/models/free_tool_calculate_crop_response_output.rb +1 -1
  186. data/lib/postboost/models/free_tool_calculate_engagement_rate_request.rb +1 -1
  187. data/lib/postboost/models/free_tool_calculate_engagement_rate_response.rb +1 -1
  188. data/lib/postboost/models/free_tool_calculate_influencer_rate_request.rb +1 -1
  189. data/lib/postboost/models/free_tool_calculate_influencer_rate_response.rb +1 -1
  190. data/lib/postboost/models/free_tool_calculate_influencer_rate_response_guide_source.rb +1 -1
  191. data/lib/postboost/models/free_tool_calculate_influencer_rate_response_multipliers_inner.rb +1 -1
  192. data/lib/postboost/models/free_tool_calculate_smm_pricing_request.rb +549 -0
  193. data/lib/postboost/models/free_tool_calculate_smm_pricing_response.rb +339 -0
  194. data/lib/postboost/models/free_tool_calculate_smm_pricing_response_line_items_inner.rb +275 -0
  195. data/lib/postboost/models/free_tool_calculate_smm_pricing_response_range.rb +224 -0
  196. data/lib/postboost/models/free_tool_calculate_social_roi_request.rb +1 -1
  197. data/lib/postboost/models/free_tool_calculate_social_roi_request_costs.rb +1 -1
  198. data/lib/postboost/models/free_tool_calculate_social_roi_response.rb +1 -1
  199. data/lib/postboost/models/free_tool_calculate_social_roi_response_cost_breakdown_inner.rb +1 -1
  200. data/lib/postboost/models/free_tool_calculate_x_api_cost_request.rb +1 -1
  201. data/lib/postboost/models/free_tool_calculate_x_api_cost_response.rb +1 -1
  202. data/lib/postboost/models/free_tool_calculate_x_api_cost_response_line_items_inner.rb +1 -1
  203. data/lib/postboost/models/free_tool_check_link_preview_request.rb +1 -1
  204. data/lib/postboost/models/free_tool_check_link_preview_response.rb +1 -1
  205. data/lib/postboost/models/free_tool_check_link_preview_response_image.rb +1 -1
  206. data/lib/postboost/models/free_tool_check_link_preview_response_previews_value.rb +1 -1
  207. data/lib/postboost/models/free_tool_check_link_preview_response_redirects_inner.rb +1 -1
  208. data/lib/postboost/models/free_tool_check_link_preview_response_tags.rb +1 -1
  209. data/lib/postboost/models/free_tool_check_post_request.rb +1 -1
  210. data/lib/postboost/models/free_tool_check_post_request_media.rb +1 -1
  211. data/lib/postboost/models/free_tool_check_post_response.rb +1 -1
  212. data/lib/postboost/models/free_tool_check_post_response_networks_inner.rb +1 -1
  213. data/lib/postboost/models/free_tool_check_post_response_networks_inner_errors_inner.rb +1 -1
  214. data/lib/postboost/models/free_tool_check_readability_request.rb +1 -1
  215. data/lib/postboost/models/free_tool_check_readability_response.rb +1 -1
  216. data/lib/postboost/models/free_tool_check_readability_response_long_sentences_inner.rb +1 -1
  217. data/lib/postboost/models/free_tool_check_youtube_thumbnail_request.rb +1 -1
  218. data/lib/postboost/models/free_tool_check_youtube_thumbnail_response.rb +1 -1
  219. data/lib/postboost/models/free_tool_check_youtube_thumbnail_response_checks_inner.rb +1 -1
  220. data/lib/postboost/models/free_tool_clean_text_request.rb +1 -1
  221. data/lib/postboost/models/free_tool_clean_text_response.rb +1 -1
  222. data/lib/postboost/models/free_tool_clean_text_response_changes_inner.rb +1 -1
  223. data/lib/postboost/models/free_tool_clean_text_response_flags_inner.rb +1 -1
  224. data/lib/postboost/models/free_tool_count_characters_request.rb +1 -1
  225. data/lib/postboost/models/free_tool_count_characters_response.rb +1 -1
  226. data/lib/postboost/models/free_tool_count_characters_response_networks_inner.rb +1 -1
  227. data/lib/postboost/models/free_tool_error.rb +1 -1
  228. data/lib/postboost/models/free_tool_find_automation_recipes_response.rb +236 -0
  229. data/lib/postboost/models/free_tool_find_automation_recipes_response_recipes_inner.rb +322 -0
  230. data/lib/postboost/models/free_tool_find_automation_recipes_response_recipes_inner_api_operations_inner.rb +225 -0
  231. data/lib/postboost/models/free_tool_find_automation_recipes_response_recipes_inner_native.rb +236 -0
  232. data/lib/postboost/models/free_tool_find_automation_recipes_response_recipes_inner_steps.rb +239 -0
  233. data/lib/postboost/models/free_tool_format_instagram_caption_request.rb +1 -1
  234. data/lib/postboost/models/free_tool_format_instagram_caption_response.rb +1 -1
  235. data/lib/postboost/models/free_tool_format_linked_in_post_request.rb +1 -1
  236. data/lib/postboost/models/free_tool_format_linked_in_post_response.rb +1 -1
  237. data/lib/postboost/models/free_tool_generate_alt_text_request.rb +378 -0
  238. data/lib/postboost/models/free_tool_generate_alt_text_response.rb +245 -0
  239. data/lib/postboost/models/free_tool_generate_bio_request.rb +372 -0
  240. data/lib/postboost/models/free_tool_generate_bio_response.rb +237 -0
  241. data/lib/postboost/models/free_tool_generate_caption_request.rb +29 -5
  242. data/lib/postboost/models/free_tool_generate_caption_response.rb +2 -2
  243. data/lib/postboost/models/free_tool_generate_fancy_text_request.rb +1 -1
  244. data/lib/postboost/models/free_tool_generate_fancy_text_response.rb +1 -1
  245. data/lib/postboost/models/free_tool_generate_fancy_text_response_styles_inner.rb +1 -1
  246. data/lib/postboost/models/free_tool_generate_hashtags_request.rb +1 -1
  247. data/lib/postboost/models/free_tool_generate_hashtags_response.rb +1 -1
  248. data/lib/postboost/models/free_tool_generate_hooks_request.rb +1 -1
  249. data/lib/postboost/models/free_tool_generate_hooks_response.rb +1 -1
  250. data/lib/postboost/models/free_tool_generate_hooks_response_hooks_inner.rb +1 -1
  251. data/lib/postboost/models/free_tool_generate_linked_in_headline_request.rb +400 -0
  252. data/lib/postboost/models/free_tool_generate_linked_in_headline_response.rb +237 -0
  253. data/lib/postboost/models/free_tool_generate_qr_code_request.rb +1 -1
  254. data/lib/postboost/models/free_tool_generate_qr_code_request_utm.rb +1 -1
  255. data/lib/postboost/models/free_tool_generate_qr_code_response.rb +1 -1
  256. data/lib/postboost/models/free_tool_generate_social_posts_from_blog_request.rb +1 -1
  257. data/lib/postboost/models/free_tool_generate_social_posts_from_blog_response.rb +1 -1
  258. data/lib/postboost/models/free_tool_generate_social_posts_from_blog_response_posts_inner.rb +1 -1
  259. data/lib/postboost/models/free_tool_generate_social_posts_from_blog_response_source.rb +1 -1
  260. data/lib/postboost/models/free_tool_generate_social_posts_from_blog_response_warnings_inner.rb +1 -1
  261. data/lib/postboost/models/free_tool_generate_usernames_request.rb +372 -0
  262. data/lib/postboost/models/free_tool_generate_usernames_response.rb +299 -0
  263. data/lib/postboost/models/free_tool_generate_usernames_response_rules.rb +235 -0
  264. data/lib/postboost/models/free_tool_generate_usernames_response_usernames_inner.rb +223 -0
  265. data/lib/postboost/models/free_tool_generate_youtube_description_request.rb +397 -0
  266. data/lib/postboost/models/free_tool_generate_youtube_description_response.rb +237 -0
  267. data/lib/postboost/models/free_tool_generate_youtube_titles_request.rb +325 -0
  268. data/lib/postboost/models/free_tool_generate_youtube_titles_response.rb +237 -0
  269. data/lib/postboost/models/free_tool_get_best_times_to_post_response.rb +1 -1
  270. data/lib/postboost/models/free_tool_get_best_times_to_post_response_networks_inner.rb +1 -1
  271. data/lib/postboost/models/free_tool_get_glossary_response.rb +236 -0
  272. data/lib/postboost/models/free_tool_get_glossary_response_terms_inner.rb +357 -0
  273. data/lib/postboost/models/free_tool_get_hook_templates_response.rb +1 -1
  274. data/lib/postboost/models/free_tool_get_hook_templates_response_hooks_inner.rb +1 -1
  275. data/lib/postboost/models/free_tool_get_image_sizes_response.rb +1 -1
  276. data/lib/postboost/models/free_tool_get_image_sizes_response_sizes_inner.rb +1 -1
  277. data/lib/postboost/models/free_tool_get_image_sizes_response_sources_inner.rb +1 -1
  278. data/lib/postboost/models/free_tool_get_safe_zones_request.rb +1 -1
  279. data/lib/postboost/models/free_tool_get_safe_zones_response.rb +1 -1
  280. data/lib/postboost/models/free_tool_get_safe_zones_response_safe_area.rb +1 -1
  281. data/lib/postboost/models/free_tool_get_safe_zones_response_source.rb +1 -1
  282. data/lib/postboost/models/free_tool_get_safe_zones_response_unsafe_areas_inner.rb +1 -1
  283. data/lib/postboost/models/free_tool_get_video_specs_response.rb +1 -1
  284. data/lib/postboost/models/free_tool_get_video_specs_response_specs_inner.rb +1 -1
  285. data/lib/postboost/models/free_tool_get_video_specs_response_specs_inner_limits.rb +1 -1
  286. data/lib/postboost/models/free_tool_list.rb +1 -1
  287. data/lib/postboost/models/free_tool_list_awareness_days_response.rb +1 -1
  288. data/lib/postboost/models/free_tool_list_awareness_days_response_covers.rb +1 -1
  289. data/lib/postboost/models/free_tool_list_awareness_days_response_entries_inner.rb +1 -1
  290. data/lib/postboost/models/free_tool_list_item.rb +1 -1
  291. data/lib/postboost/models/free_tool_pick_social_media_tool_request.rb +271 -0
  292. data/lib/postboost/models/free_tool_pick_social_media_tool_response.rb +271 -0
  293. data/lib/postboost/models/free_tool_pick_social_media_tool_response_results_inner.rb +351 -0
  294. data/lib/postboost/models/free_tool_plan_content_calendar_request.rb +1 -1
  295. data/lib/postboost/models/free_tool_plan_content_calendar_request_posts_per_week.rb +1 -1
  296. data/lib/postboost/models/free_tool_plan_content_calendar_request_times.rb +1 -1
  297. data/lib/postboost/models/free_tool_plan_content_calendar_response.rb +1 -1
  298. data/lib/postboost/models/free_tool_plan_content_calendar_response_slots_inner.rb +1 -1
  299. data/lib/postboost/models/free_tool_plan_posting_frequency_request.rb +1 -1
  300. data/lib/postboost/models/free_tool_plan_posting_frequency_response.rb +1 -1
  301. data/lib/postboost/models/free_tool_plan_posting_frequency_response_networks_inner.rb +1 -1
  302. data/lib/postboost/models/free_tool_plan_posting_frequency_response_networks_inner_recommended_per_week.rb +1 -1
  303. data/lib/postboost/models/free_tool_plan_posting_frequency_response_networks_inner_sources_inner.rb +1 -1
  304. data/lib/postboost/models/free_tool_plan_posting_frequency_response_slots_inner.rb +1 -1
  305. data/lib/postboost/models/free_tool_preview_post_request.rb +1 -1
  306. data/lib/postboost/models/free_tool_preview_post_response.rb +1 -1
  307. data/lib/postboost/models/free_tool_preview_post_response_networks_inner.rb +1 -1
  308. data/lib/postboost/models/free_tool_score_social_audit_request.rb +1 -1
  309. data/lib/postboost/models/free_tool_score_social_audit_request_instagram.rb +1 -1
  310. data/lib/postboost/models/free_tool_score_social_audit_response.rb +1 -1
  311. data/lib/postboost/models/free_tool_score_social_audit_response_networks_inner.rb +1 -1
  312. data/lib/postboost/models/free_tool_score_social_audit_response_networks_inner_items_inner.rb +1 -1
  313. data/lib/postboost/models/free_tool_score_social_audit_response_top_fixes_inner.rb +1 -1
  314. data/lib/postboost/models/free_tool_search_emoji_request.rb +1 -1
  315. data/lib/postboost/models/free_tool_search_emoji_response.rb +1 -1
  316. data/lib/postboost/models/free_tool_search_emoji_response_results_inner.rb +1 -1
  317. data/lib/postboost/models/free_tool_split_thread_request.rb +1 -1
  318. data/lib/postboost/models/free_tool_split_thread_response.rb +1 -1
  319. data/lib/postboost/models/free_tool_split_thread_response_posts_inner.rb +1 -1
  320. data/lib/postboost/models/free_tool_summarize_report_request.rb +252 -0
  321. data/lib/postboost/models/free_tool_summarize_report_request_rows_inner.rb +513 -0
  322. data/lib/postboost/models/free_tool_summarize_report_response.rb +309 -0
  323. data/lib/postboost/models/{initiate_remote_upload201_response_one_of.rb → free_tool_summarize_report_response_date_range.rb} +22 -11
  324. data/lib/postboost/models/free_tool_summarize_report_response_networks_inner.rb +253 -0
  325. data/lib/postboost/models/free_tool_summarize_report_response_top_posts_inner.rb +242 -0
  326. data/lib/postboost/models/free_tool_summarize_report_response_weekdays_inner.rb +242 -0
  327. data/lib/postboost/models/free_tool_verify_webhook_signature_request.rb +421 -0
  328. data/lib/postboost/models/free_tool_verify_webhook_signature_response.rb +236 -0
  329. data/lib/postboost/models/get_account_health200_response.rb +1 -1
  330. data/lib/postboost/models/get_brand_voice200_response.rb +1 -1
  331. data/lib/postboost/models/get_competitor200_response.rb +1 -1
  332. data/lib/postboost/models/get_inbox_conversation200_response.rb +1 -1
  333. data/lib/postboost/models/get_posting_schedule200_response.rb +1 -1
  334. data/lib/postboost/models/get_remote_upload_status200_response.rb +70 -8
  335. data/lib/postboost/models/get_remote_upload_status404_response.rb +271 -0
  336. data/lib/postboost/models/get_report_branding200_response.rb +1 -1
  337. data/lib/postboost/models/get_repurpose_run200_response.rb +1 -1
  338. data/lib/postboost/models/guardrail_error.rb +1 -1
  339. data/lib/postboost/models/hashtag_group.rb +1 -1
  340. data/lib/postboost/models/hashtag_group_input.rb +1 -1
  341. data/lib/postboost/models/image_alt_text200_response.rb +1 -1
  342. data/lib/postboost/models/image_alt_text_input.rb +1 -1
  343. data/lib/postboost/models/image_alt_text_response.rb +1 -1
  344. data/lib/postboost/models/image_credit_balance.rb +1 -1
  345. data/lib/postboost/models/image_edit_input.rb +1 -1
  346. data/lib/postboost/models/image_generate200_response.rb +1 -1
  347. data/lib/postboost/models/image_generate429_response.rb +1 -1
  348. data/lib/postboost/models/image_generate_input.rb +1 -1
  349. data/lib/postboost/models/image_generation_response.rb +1 -1
  350. data/lib/postboost/models/image_prompt200_response.rb +1 -1
  351. data/lib/postboost/models/image_prompt429_response.rb +1 -1
  352. data/lib/postboost/models/image_prompt_input.rb +1 -1
  353. data/lib/postboost/models/image_prompt_response.rb +1 -1
  354. data/lib/postboost/models/image_variations200_response.rb +1 -1
  355. data/lib/postboost/models/image_variations_input.rb +1 -1
  356. data/lib/postboost/models/image_variations_response.rb +1 -1
  357. data/lib/postboost/models/inbox_author.rb +1 -1
  358. data/lib/postboost/models/inbox_conversation.rb +1 -1
  359. data/lib/postboost/models/inbox_conversation_account.rb +1 -1
  360. data/lib/postboost/models/inbox_conversation_update.rb +1 -1
  361. data/lib/postboost/models/inbox_message.rb +1 -1
  362. data/lib/postboost/models/inbox_message_author.rb +1 -1
  363. data/lib/postboost/models/inbox_reply_draft.rb +1 -1
  364. data/lib/postboost/models/inbox_reply_draft_approve.rb +1 -1
  365. data/lib/postboost/models/inbox_reply_draft_edit.rb +1 -1
  366. data/lib/postboost/models/inbox_reply_draft_input.rb +1 -1
  367. data/lib/postboost/models/initiate_chunked_upload201_response.rb +1 -1
  368. data/lib/postboost/models/initiate_chunked_upload_request.rb +1 -1
  369. data/lib/postboost/models/initiate_remote_upload200_response.rb +286 -0
  370. data/lib/postboost/models/initiate_remote_upload_request.rb +1 -1
  371. data/lib/postboost/models/learn_brand_voice_input.rb +1 -1
  372. data/lib/postboost/models/learn_brand_voice_response.rb +1 -1
  373. data/lib/postboost/models/learn_brand_voice_response_meta.rb +1 -1
  374. data/lib/postboost/models/list_account_groups200_response.rb +1 -1
  375. data/lib/postboost/models/list_accounts200_response.rb +1 -1
  376. data/lib/postboost/models/list_agent_proposals200_response.rb +1 -1
  377. data/lib/postboost/models/list_agent_runs200_response.rb +1 -1
  378. data/lib/postboost/models/list_agents200_response.rb +1 -1
  379. data/lib/postboost/models/list_api_activity200_response.rb +1 -1
  380. data/lib/postboost/models/list_api_keys200_response.rb +1 -1
  381. data/lib/postboost/models/list_competitors200_response.rb +1 -1
  382. data/lib/postboost/models/list_hashtag_groups200_response.rb +1 -1
  383. data/lib/postboost/models/list_inbox_conversations200_response.rb +1 -1
  384. data/lib/postboost/models/list_inbox_reply_drafts200_response.rb +1 -1
  385. data/lib/postboost/models/list_media200_response.rb +1 -1
  386. data/lib/postboost/models/list_media_folders200_response.rb +1 -1
  387. data/lib/postboost/models/list_mentions200_response.rb +1 -1
  388. data/lib/postboost/models/list_my_workspaces200_response.rb +1 -1
  389. data/lib/postboost/models/list_posts200_response.rb +1 -1
  390. data/lib/postboost/models/list_receipts200_response.rb +1 -1
  391. data/lib/postboost/models/list_recycling_rules200_response.rb +1 -1
  392. data/lib/postboost/models/list_recycling_runs200_response.rb +1 -1
  393. data/lib/postboost/models/list_report_exports200_response.rb +1 -1
  394. data/lib/postboost/models/list_reseller_clients200_response.rb +1 -1
  395. data/lib/postboost/models/list_rss_feeds200_response.rb +1 -1
  396. data/lib/postboost/models/list_tags200_response.rb +1 -1
  397. data/lib/postboost/models/list_templates200_response.rb +1 -1
  398. data/lib/postboost/models/list_users200_response.rb +1 -1
  399. data/lib/postboost/models/list_webhook_subscriptions200_response.rb +1 -1
  400. data/lib/postboost/models/list_workspaces200_response.rb +1 -1
  401. data/lib/postboost/models/media.rb +1 -1
  402. data/lib/postboost/models/media_base64_input.rb +1 -1
  403. data/lib/postboost/models/media_folder.rb +1 -1
  404. data/lib/postboost/models/media_folder_input.rb +1 -1
  405. data/lib/postboost/models/media_folder_ref.rb +1 -1
  406. data/lib/postboost/models/mention.rb +1 -1
  407. data/lib/postboost/models/mention_identity.rb +1 -1
  408. data/lib/postboost/models/mention_identity_input.rb +1 -1
  409. data/lib/postboost/models/mention_input.rb +1 -1
  410. data/lib/postboost/models/message_only.rb +1 -1
  411. data/lib/postboost/models/pagination_meta.rb +1 -1
  412. data/lib/postboost/models/pagination_meta_links.rb +1 -1
  413. data/lib/postboost/models/pagination_meta_meta.rb +1 -1
  414. data/lib/postboost/models/poll_rss_feed200_response.rb +1 -1
  415. data/lib/postboost/models/post.rb +1 -1
  416. data/lib/postboost/models/post_analytics.rb +1 -1
  417. data/lib/postboost/models/post_content.rb +2 -1
  418. data/lib/postboost/models/post_input.rb +1 -1
  419. data/lib/postboost/models/post_options_instagram.rb +1 -1
  420. data/lib/postboost/models/post_options_tik_tok.rb +1 -1
  421. data/lib/postboost/models/post_options_youtube.rb +1 -1
  422. data/lib/postboost/models/post_status.rb +1 -1
  423. data/lib/postboost/models/post_version.rb +1 -1
  424. data/lib/postboost/models/post_version_options.rb +1 -1
  425. data/lib/postboost/models/post_warning.rb +1 -1
  426. data/lib/postboost/models/post_warnings.rb +1 -1
  427. data/lib/postboost/models/posting_schedule.rb +1 -1
  428. data/lib/postboost/models/posting_schedule_day.rb +1 -1
  429. data/lib/postboost/models/posting_schedule_day_times_inner.rb +1 -1
  430. data/lib/postboost/models/posting_schedule_input.rb +1 -1
  431. data/lib/postboost/models/posting_time_slot.rb +1 -1
  432. data/lib/postboost/models/posting_times.rb +1 -1
  433. data/lib/postboost/models/posting_times_best_inner.rb +1 -1
  434. data/lib/postboost/models/posting_times_day_intervals_inner_inner.rb +1 -1
  435. data/lib/postboost/models/posting_times_days_inner.rb +1 -1
  436. data/lib/postboost/models/preflight_result.rb +1 -1
  437. data/lib/postboost/models/public_workspace.rb +1 -1
  438. data/lib/postboost/models/public_workspace_pivot.rb +1 -1
  439. data/lib/postboost/models/publish_progress.rb +1 -1
  440. data/lib/postboost/models/queue_slots.rb +1 -1
  441. data/lib/postboost/models/receipt.rb +1 -1
  442. data/lib/postboost/models/receipt_input.rb +1 -1
  443. data/lib/postboost/models/receipt_update_input.rb +1 -1
  444. data/lib/postboost/models/recommended_posting_times.rb +1 -1
  445. data/lib/postboost/models/reconnect_link.rb +1 -1
  446. data/lib/postboost/models/recycling_rule.rb +1 -1
  447. data/lib/postboost/models/recycling_rule_input.rb +1 -1
  448. data/lib/postboost/models/recycling_rule_settings.rb +1 -1
  449. data/lib/postboost/models/recycling_rule_update.rb +1 -1
  450. data/lib/postboost/models/recycling_run.rb +1 -1
  451. data/lib/postboost/models/remove_generic_subscription422_response.rb +1 -1
  452. data/lib/postboost/models/remove_user_from_workspace_request.rb +1 -1
  453. data/lib/postboost/models/report_branding.rb +1 -1
  454. data/lib/postboost/models/report_branding_input.rb +1 -1
  455. data/lib/postboost/models/report_export.rb +1 -1
  456. data/lib/postboost/models/report_export_input.rb +1 -1
  457. data/lib/postboost/models/repurpose_content200_response.rb +1 -1
  458. data/lib/postboost/models/repurpose_content202_response.rb +1 -1
  459. data/lib/postboost/models/repurpose_content500_response.rb +1 -1
  460. data/lib/postboost/models/repurpose_input.rb +1 -1
  461. data/lib/postboost/models/repurpose_input_theme.rb +1 -1
  462. data/lib/postboost/models/repurpose_result.rb +1 -1
  463. data/lib/postboost/models/repurpose_result_media.rb +1 -1
  464. data/lib/postboost/models/repurpose_result_source.rb +1 -1
  465. data/lib/postboost/models/repurpose_run.rb +1 -1
  466. data/lib/postboost/models/repurpose_run_accepted.rb +1 -1
  467. data/lib/postboost/models/repurpose_slide.rb +1 -1
  468. data/lib/postboost/models/reseller_client.rb +1 -1
  469. data/lib/postboost/models/reseller_client_input.rb +1 -1
  470. data/lib/postboost/models/reseller_client_usage.rb +1 -1
  471. data/lib/postboost/models/retry_post_account_result.rb +1 -1
  472. data/lib/postboost/models/rss_feed.rb +1 -1
  473. data/lib/postboost/models/rss_feed_input.rb +1 -1
  474. data/lib/postboost/models/rss_feed_update.rb +1 -1
  475. data/lib/postboost/models/run_agent202_response.rb +1 -1
  476. data/lib/postboost/models/schedule_post_request.rb +1 -1
  477. data/lib/postboost/models/schedule_result.rb +1 -1
  478. data/lib/postboost/models/subscription.rb +1 -1
  479. data/lib/postboost/models/subscription_input.rb +1 -1
  480. data/lib/postboost/models/subscription_status.rb +1 -1
  481. data/lib/postboost/models/subscription_update_input.rb +1 -1
  482. data/lib/postboost/models/tag.rb +1 -1
  483. data/lib/postboost/models/tag_input.rb +1 -1
  484. data/lib/postboost/models/template.rb +1 -1
  485. data/lib/postboost/models/template_content_item.rb +1 -1
  486. data/lib/postboost/models/template_input.rb +1 -1
  487. data/lib/postboost/models/template_input_content_inner.rb +1 -1
  488. data/lib/postboost/models/update_media_request.rb +1 -1
  489. data/lib/postboost/models/update_post200_response.rb +1 -1
  490. data/lib/postboost/models/upload_chunk201_response.rb +1 -1
  491. data/lib/postboost/models/user.rb +1 -1
  492. data/lib/postboost/models/user_input.rb +1 -1
  493. data/lib/postboost/models/user_update_input.rb +1 -1
  494. data/lib/postboost/models/webhook_envelope.rb +1 -1
  495. data/lib/postboost/models/webhook_event_name.rb +1 -1
  496. data/lib/postboost/models/webhook_event_payload.rb +1 -1
  497. data/lib/postboost/models/webhook_subscription.rb +1 -1
  498. data/lib/postboost/models/webhook_subscription_input.rb +1 -1
  499. data/lib/postboost/models/workspace.rb +1 -1
  500. data/lib/postboost/models/workspace_agent.rb +1 -1
  501. data/lib/postboost/models/workspace_agent_input.rb +1 -1
  502. data/lib/postboost/models/workspace_agent_settings.rb +1 -1
  503. data/lib/postboost/models/workspace_agent_update.rb +1 -1
  504. data/lib/postboost/models/workspace_input.rb +1 -1
  505. data/lib/postboost/models/workspace_user_input.rb +1 -1
  506. data/lib/postboost/models/x_usage.rb +1 -1
  507. data/lib/postboost/models/x_usage_counter.rb +1 -1
  508. data/lib/postboost/version.rb +2 -2
  509. data/lib/postboost.rb +44 -3
  510. data/postboost.gemspec +1 -1
  511. data/spec/api/account_groups_api_spec.rb +1 -1
  512. data/spec/api/accounts_api_spec.rb +1 -1
  513. data/spec/api/activity_api_spec.rb +1 -1
  514. data/spec/api/agents_api_spec.rb +1 -1
  515. data/spec/api/ai_api_spec.rb +1 -1
  516. data/spec/api/analytics_api_spec.rb +1 -1
  517. data/spec/api/competitors_api_spec.rb +1 -1
  518. data/spec/api/free_tools_api_spec.rb +160 -1
  519. data/spec/api/hashtag_groups_api_spec.rb +1 -1
  520. data/spec/api/inbox_api_spec.rb +1 -1
  521. data/spec/api/media_api_spec.rb +4 -4
  522. data/spec/api/mentions_api_spec.rb +1 -1
  523. data/spec/api/posting_schedule_api_spec.rb +1 -1
  524. data/spec/api/posts_api_spec.rb +1 -1
  525. data/spec/api/receipts_api_spec.rb +1 -1
  526. data/spec/api/subscriptions_api_spec.rb +1 -1
  527. data/spec/api/tags_api_spec.rb +1 -1
  528. data/spec/api/templates_api_spec.rb +1 -1
  529. data/spec/api/users_api_spec.rb +1 -1
  530. data/spec/api/webhooks_api_spec.rb +1 -1
  531. data/spec/api/workspaces_api_spec.rb +1 -1
  532. data/spec/models/account_analytics_initial_sync_spec.rb +1 -1
  533. data/spec/models/account_analytics_spec.rb +1 -1
  534. data/spec/models/account_connection_health_reconnect_reason_spec.rb +1 -1
  535. data/spec/models/account_connection_health_spec.rb +1 -1
  536. data/spec/models/account_errors_inner_one_of_spec.rb +1 -1
  537. data/spec/models/account_errors_inner_spec.rb +1 -1
  538. data/spec/models/account_group_input_spec.rb +1 -1
  539. data/spec/models/account_group_spec.rb +1 -1
  540. data/spec/models/account_health_daily_cap_spec.rb +1 -1
  541. data/spec/models/account_health_spec.rb +1 -1
  542. data/spec/models/account_schedule_spec.rb +1 -1
  543. data/spec/models/account_spec.rb +1 -1
  544. data/spec/models/add_competitor202_response_spec.rb +1 -1
  545. data/spec/models/add_competitor409_response_spec.rb +1 -1
  546. data/spec/models/add_generic_subscription_request_spec.rb +1 -1
  547. data/spec/models/add_post_to_queue_request_spec.rb +1 -1
  548. data/spec/models/agent_page_meta_spec.rb +1 -1
  549. data/spec/models/agent_proposal_decision_spec.rb +1 -1
  550. data/spec/models/agent_proposal_spec.rb +1 -1
  551. data/spec/models/agent_run_spec.rb +1 -1
  552. data/spec/models/ai_credits_spec.rb +1 -1
  553. data/spec/models/ai_usage_spec.rb +1 -1
  554. data/spec/models/ai_usage_text_spec.rb +1 -1
  555. data/spec/models/analytics_period_spec.rb +1 -1
  556. data/spec/models/analytics_summary_data_spec.rb +1 -1
  557. data/spec/models/analytics_summary_spec.rb +1 -1
  558. data/spec/models/api_activity_outcome_spec.rb +1 -1
  559. data/spec/models/api_activity_spec.rb +1 -1
  560. data/spec/models/api_key_ability_spec.rb +1 -1
  561. data/spec/models/api_key_input_spec.rb +1 -1
  562. data/spec/models/api_key_spec.rb +1 -1
  563. data/spec/models/approve_agent_proposal200_response_spec.rb +1 -1
  564. data/spec/models/approve_agent_proposal409_response_spec.rb +1 -1
  565. data/spec/models/approve_inbox_reply_draft403_response_spec.rb +1 -1
  566. data/spec/models/approve_post_request_spec.rb +1 -1
  567. data/spec/models/best_posting_times_spec.rb +1 -1
  568. data/spec/models/best_posting_times_times_inner_spec.rb +1 -1
  569. data/spec/models/blog_to_social200_response_spec.rb +1 -1
  570. data/spec/models/blog_to_social429_response_spec.rb +1 -1
  571. data/spec/models/blog_to_social_caption_spec.rb +1 -1
  572. data/spec/models/blog_to_social_input_spec.rb +1 -1
  573. data/spec/models/blog_to_social_media_spec.rb +1 -1
  574. data/spec/models/blog_to_social_response_spec.rb +1 -1
  575. data/spec/models/brand_voice_input_spec.rb +1 -1
  576. data/spec/models/brand_voice_meta_spec.rb +1 -1
  577. data/spec/models/brand_voice_spec.rb +1 -1
  578. data/spec/models/cancel_subscription422_response_errors_spec.rb +1 -1
  579. data/spec/models/cancel_subscription422_response_spec.rb +1 -1
  580. data/spec/models/cancel_subscription_request_spec.rb +1 -1
  581. data/spec/models/change_subscription_plan_request_spec.rb +1 -1
  582. data/spec/models/channel_account_spec.rb +1 -1
  583. data/spec/models/checkout_subscription200_response_spec.rb +1 -1
  584. data/spec/models/checkout_subscription_request_spec.rb +1 -1
  585. data/spec/models/coded_error_spec.rb +1 -1
  586. data/spec/models/competitor_detail_spec.rb +1 -1
  587. data/spec/models/competitor_input_spec.rb +1 -1
  588. data/spec/models/competitor_media_spec.rb +1 -1
  589. data/spec/models/competitor_snapshot_spec.rb +1 -1
  590. data/spec/models/competitor_spec.rb +1 -1
  591. data/spec/models/complete_chunked_upload_request_spec.rb +1 -1
  592. data/spec/models/connect_channel_input_spec.rb +1 -1
  593. data/spec/models/connect_link_spec.rb +1 -1
  594. data/spec/models/create_account_group201_response_spec.rb +1 -1
  595. data/spec/models/create_agent201_response_spec.rb +1 -1
  596. data/spec/models/create_api_key201_response_data_spec.rb +1 -1
  597. data/spec/models/create_api_key201_response_spec.rb +1 -1
  598. data/spec/models/create_connect_link_request_spec.rb +1 -1
  599. data/spec/models/create_hashtag_group201_response_spec.rb +1 -1
  600. data/spec/models/create_inbox_reply_draft201_response_spec.rb +1 -1
  601. data/spec/models/create_media_folder_request_spec.rb +1 -1
  602. data/spec/models/create_mention201_response_spec.rb +1 -1
  603. data/spec/models/create_post201_response_spec.rb +1 -1
  604. data/spec/models/create_recycling_rule201_response_spec.rb +1 -1
  605. data/spec/models/create_report_export201_response_spec.rb +1 -1
  606. data/spec/models/create_reseller_client201_response_spec.rb +1 -1
  607. data/spec/models/create_rss_feed201_response_spec.rb +1 -1
  608. data/spec/models/create_template201_response_spec.rb +1 -1
  609. data/spec/models/create_webhook_subscription201_response_data_spec.rb +1 -1
  610. data/spec/models/create_webhook_subscription201_response_spec.rb +1 -1
  611. data/spec/models/delete_agent200_response_spec.rb +1 -1
  612. data/spec/models/delete_media_bulk_request_items_inner_spec.rb +1 -1
  613. data/spec/models/delete_media_bulk_request_spec.rb +1 -1
  614. data/spec/models/delete_media_folder_request_spec.rb +1 -1
  615. data/spec/models/delete_mode_spec.rb +1 -1
  616. data/spec/models/delete_post_request_spec.rb +1 -1
  617. data/spec/models/delete_posts_bulk_request_spec.rb +1 -1
  618. data/spec/models/delete_receipts_bulk_request_spec.rb +1 -1
  619. data/spec/models/delete_result_spec.rb +1 -1
  620. data/spec/models/delete_user400_response_spec.rb +1 -1
  621. data/spec/models/delete_users_bulk_request_spec.rb +1 -1
  622. data/spec/models/delete_workspaces_bulk_request_spec.rb +1 -1
  623. data/spec/models/free_tool_build_hashtag_groups_request_spec.rb +72 -0
  624. data/spec/models/free_tool_build_hashtag_groups_response_groups_inner_spec.rb +48 -0
  625. data/spec/models/free_tool_build_hashtag_groups_response_removed_inner_spec.rb +46 -0
  626. data/spec/models/free_tool_build_hashtag_groups_response_spec.rb +66 -0
  627. data/spec/models/free_tool_build_utm_url_request_spec.rb +1 -1
  628. data/spec/models/free_tool_build_utm_url_response_spec.rb +1 -1
  629. data/spec/models/free_tool_calculate_aspect_ratio_request_spec.rb +1 -1
  630. data/spec/models/free_tool_calculate_aspect_ratio_response_matches_inner_spec.rb +1 -1
  631. data/spec/models/free_tool_calculate_aspect_ratio_response_rounding_spec.rb +1 -1
  632. data/spec/models/free_tool_calculate_aspect_ratio_response_spec.rb +1 -1
  633. data/spec/models/free_tool_calculate_carousel_slices_request_spec.rb +1 -1
  634. data/spec/models/free_tool_calculate_carousel_slices_response_output_spec.rb +1 -1
  635. data/spec/models/free_tool_calculate_carousel_slices_response_slides_inner_spec.rb +1 -1
  636. data/spec/models/free_tool_calculate_carousel_slices_response_spec.rb +1 -1
  637. data/spec/models/free_tool_calculate_crop_request_spec.rb +1 -1
  638. data/spec/models/free_tool_calculate_crop_response_crop_spec.rb +1 -1
  639. data/spec/models/free_tool_calculate_crop_response_image_spec.rb +1 -1
  640. data/spec/models/free_tool_calculate_crop_response_output_spec.rb +1 -1
  641. data/spec/models/free_tool_calculate_crop_response_spec.rb +1 -1
  642. data/spec/models/free_tool_calculate_engagement_rate_request_spec.rb +1 -1
  643. data/spec/models/free_tool_calculate_engagement_rate_response_spec.rb +1 -1
  644. data/spec/models/free_tool_calculate_influencer_rate_request_spec.rb +1 -1
  645. data/spec/models/free_tool_calculate_influencer_rate_response_guide_source_spec.rb +1 -1
  646. data/spec/models/free_tool_calculate_influencer_rate_response_multipliers_inner_spec.rb +1 -1
  647. data/spec/models/free_tool_calculate_influencer_rate_response_spec.rb +1 -1
  648. data/spec/models/free_tool_calculate_smm_pricing_request_spec.rb +96 -0
  649. data/spec/models/free_tool_calculate_smm_pricing_response_line_items_inner_spec.rb +58 -0
  650. data/spec/models/free_tool_calculate_smm_pricing_response_range_spec.rb +42 -0
  651. data/spec/models/free_tool_calculate_smm_pricing_response_spec.rb +94 -0
  652. data/spec/models/free_tool_calculate_social_roi_request_costs_spec.rb +1 -1
  653. data/spec/models/free_tool_calculate_social_roi_request_spec.rb +1 -1
  654. data/spec/models/free_tool_calculate_social_roi_response_cost_breakdown_inner_spec.rb +1 -1
  655. data/spec/models/free_tool_calculate_social_roi_response_spec.rb +1 -1
  656. data/spec/models/free_tool_calculate_x_api_cost_request_spec.rb +1 -1
  657. data/spec/models/free_tool_calculate_x_api_cost_response_line_items_inner_spec.rb +1 -1
  658. data/spec/models/free_tool_calculate_x_api_cost_response_spec.rb +1 -1
  659. data/spec/models/free_tool_check_link_preview_request_spec.rb +1 -1
  660. data/spec/models/free_tool_check_link_preview_response_image_spec.rb +1 -1
  661. data/spec/models/free_tool_check_link_preview_response_previews_value_spec.rb +1 -1
  662. data/spec/models/free_tool_check_link_preview_response_redirects_inner_spec.rb +1 -1
  663. data/spec/models/free_tool_check_link_preview_response_spec.rb +1 -1
  664. data/spec/models/free_tool_check_link_preview_response_tags_spec.rb +1 -1
  665. data/spec/models/free_tool_check_post_request_media_spec.rb +1 -1
  666. data/spec/models/free_tool_check_post_request_spec.rb +1 -1
  667. data/spec/models/free_tool_check_post_response_networks_inner_errors_inner_spec.rb +1 -1
  668. data/spec/models/free_tool_check_post_response_networks_inner_spec.rb +1 -1
  669. data/spec/models/free_tool_check_post_response_spec.rb +1 -1
  670. data/spec/models/free_tool_check_readability_request_spec.rb +1 -1
  671. data/spec/models/free_tool_check_readability_response_long_sentences_inner_spec.rb +1 -1
  672. data/spec/models/free_tool_check_readability_response_spec.rb +1 -1
  673. data/spec/models/free_tool_check_youtube_thumbnail_request_spec.rb +1 -1
  674. data/spec/models/free_tool_check_youtube_thumbnail_response_checks_inner_spec.rb +1 -1
  675. data/spec/models/free_tool_check_youtube_thumbnail_response_spec.rb +1 -1
  676. data/spec/models/free_tool_clean_text_request_spec.rb +1 -1
  677. data/spec/models/free_tool_clean_text_response_changes_inner_spec.rb +1 -1
  678. data/spec/models/free_tool_clean_text_response_flags_inner_spec.rb +1 -1
  679. data/spec/models/free_tool_clean_text_response_spec.rb +1 -1
  680. data/spec/models/free_tool_count_characters_request_spec.rb +1 -1
  681. data/spec/models/free_tool_count_characters_response_networks_inner_spec.rb +1 -1
  682. data/spec/models/free_tool_count_characters_response_spec.rb +1 -1
  683. data/spec/models/free_tool_error_spec.rb +1 -1
  684. data/spec/models/free_tool_find_automation_recipes_response_recipes_inner_api_operations_inner_spec.rb +42 -0
  685. data/spec/models/free_tool_find_automation_recipes_response_recipes_inner_native_spec.rb +48 -0
  686. data/spec/models/free_tool_find_automation_recipes_response_recipes_inner_spec.rb +82 -0
  687. data/spec/models/free_tool_find_automation_recipes_response_recipes_inner_steps_spec.rb +48 -0
  688. data/spec/models/free_tool_find_automation_recipes_response_spec.rb +48 -0
  689. data/spec/models/free_tool_format_instagram_caption_request_spec.rb +1 -1
  690. data/spec/models/free_tool_format_instagram_caption_response_spec.rb +1 -1
  691. data/spec/models/free_tool_format_linked_in_post_request_spec.rb +1 -1
  692. data/spec/models/free_tool_format_linked_in_post_response_spec.rb +1 -1
  693. data/spec/models/free_tool_generate_alt_text_request_spec.rb +64 -0
  694. data/spec/models/free_tool_generate_alt_text_response_spec.rb +54 -0
  695. data/spec/models/free_tool_generate_bio_request_spec.rb +74 -0
  696. data/spec/models/free_tool_generate_bio_response_spec.rb +48 -0
  697. data/spec/models/free_tool_generate_caption_request_spec.rb +11 -1
  698. data/spec/models/free_tool_generate_caption_response_spec.rb +1 -1
  699. data/spec/models/free_tool_generate_fancy_text_request_spec.rb +1 -1
  700. data/spec/models/free_tool_generate_fancy_text_response_spec.rb +1 -1
  701. data/spec/models/free_tool_generate_fancy_text_response_styles_inner_spec.rb +1 -1
  702. data/spec/models/free_tool_generate_hashtags_request_spec.rb +1 -1
  703. data/spec/models/free_tool_generate_hashtags_response_spec.rb +1 -1
  704. data/spec/models/free_tool_generate_hooks_request_spec.rb +1 -1
  705. data/spec/models/free_tool_generate_hooks_response_hooks_inner_spec.rb +1 -1
  706. data/spec/models/free_tool_generate_hooks_response_spec.rb +1 -1
  707. data/spec/models/free_tool_generate_linked_in_headline_request_spec.rb +64 -0
  708. data/spec/models/free_tool_generate_linked_in_headline_response_spec.rb +48 -0
  709. data/spec/models/free_tool_generate_qr_code_request_spec.rb +1 -1
  710. data/spec/models/free_tool_generate_qr_code_request_utm_spec.rb +1 -1
  711. data/spec/models/free_tool_generate_qr_code_response_spec.rb +1 -1
  712. data/spec/models/free_tool_generate_social_posts_from_blog_request_spec.rb +1 -1
  713. data/spec/models/free_tool_generate_social_posts_from_blog_response_posts_inner_spec.rb +1 -1
  714. data/spec/models/free_tool_generate_social_posts_from_blog_response_source_spec.rb +1 -1
  715. data/spec/models/free_tool_generate_social_posts_from_blog_response_spec.rb +1 -1
  716. data/spec/models/free_tool_generate_social_posts_from_blog_response_warnings_inner_spec.rb +1 -1
  717. data/spec/models/free_tool_generate_usernames_request_spec.rb +68 -0
  718. data/spec/models/free_tool_generate_usernames_response_rules_spec.rb +48 -0
  719. data/spec/models/free_tool_generate_usernames_response_spec.rb +68 -0
  720. data/spec/models/free_tool_generate_usernames_response_usernames_inner_spec.rb +42 -0
  721. data/spec/models/free_tool_generate_youtube_description_request_spec.rb +70 -0
  722. data/spec/models/free_tool_generate_youtube_description_response_spec.rb +48 -0
  723. data/spec/models/free_tool_generate_youtube_titles_request_spec.rb +52 -0
  724. data/spec/models/free_tool_generate_youtube_titles_response_spec.rb +48 -0
  725. data/spec/models/free_tool_get_best_times_to_post_response_networks_inner_spec.rb +1 -1
  726. data/spec/models/free_tool_get_best_times_to_post_response_spec.rb +1 -1
  727. data/spec/models/free_tool_get_glossary_response_spec.rb +48 -0
  728. data/spec/models/free_tool_get_glossary_response_terms_inner_spec.rb +100 -0
  729. data/spec/models/free_tool_get_hook_templates_response_hooks_inner_spec.rb +1 -1
  730. data/spec/models/free_tool_get_hook_templates_response_spec.rb +1 -1
  731. data/spec/models/free_tool_get_image_sizes_response_sizes_inner_spec.rb +1 -1
  732. data/spec/models/free_tool_get_image_sizes_response_sources_inner_spec.rb +1 -1
  733. data/spec/models/free_tool_get_image_sizes_response_spec.rb +1 -1
  734. data/spec/models/free_tool_get_safe_zones_request_spec.rb +1 -1
  735. data/spec/models/free_tool_get_safe_zones_response_safe_area_spec.rb +1 -1
  736. data/spec/models/free_tool_get_safe_zones_response_source_spec.rb +1 -1
  737. data/spec/models/free_tool_get_safe_zones_response_spec.rb +1 -1
  738. data/spec/models/free_tool_get_safe_zones_response_unsafe_areas_inner_spec.rb +1 -1
  739. data/spec/models/free_tool_get_video_specs_response_spec.rb +1 -1
  740. data/spec/models/free_tool_get_video_specs_response_specs_inner_limits_spec.rb +1 -1
  741. data/spec/models/free_tool_get_video_specs_response_specs_inner_spec.rb +1 -1
  742. data/spec/models/free_tool_list_awareness_days_response_covers_spec.rb +1 -1
  743. data/spec/models/free_tool_list_awareness_days_response_entries_inner_spec.rb +1 -1
  744. data/spec/models/free_tool_list_awareness_days_response_spec.rb +1 -1
  745. data/spec/models/free_tool_list_item_spec.rb +1 -1
  746. data/spec/models/free_tool_list_spec.rb +1 -1
  747. data/spec/models/free_tool_pick_social_media_tool_request_spec.rb +50 -0
  748. data/spec/models/free_tool_pick_social_media_tool_response_results_inner_spec.rb +102 -0
  749. data/spec/models/free_tool_pick_social_media_tool_response_spec.rb +58 -0
  750. data/spec/models/free_tool_plan_content_calendar_request_posts_per_week_spec.rb +1 -1
  751. data/spec/models/free_tool_plan_content_calendar_request_spec.rb +1 -1
  752. data/spec/models/free_tool_plan_content_calendar_request_times_spec.rb +1 -1
  753. data/spec/models/free_tool_plan_content_calendar_response_slots_inner_spec.rb +1 -1
  754. data/spec/models/free_tool_plan_content_calendar_response_spec.rb +1 -1
  755. data/spec/models/free_tool_plan_posting_frequency_request_spec.rb +1 -1
  756. data/spec/models/free_tool_plan_posting_frequency_response_networks_inner_recommended_per_week_spec.rb +1 -1
  757. data/spec/models/free_tool_plan_posting_frequency_response_networks_inner_sources_inner_spec.rb +1 -1
  758. data/spec/models/free_tool_plan_posting_frequency_response_networks_inner_spec.rb +1 -1
  759. data/spec/models/free_tool_plan_posting_frequency_response_slots_inner_spec.rb +1 -1
  760. data/spec/models/free_tool_plan_posting_frequency_response_spec.rb +1 -1
  761. data/spec/models/free_tool_preview_post_request_spec.rb +1 -1
  762. data/spec/models/free_tool_preview_post_response_networks_inner_spec.rb +1 -1
  763. data/spec/models/free_tool_preview_post_response_spec.rb +1 -1
  764. data/spec/models/free_tool_score_social_audit_request_instagram_spec.rb +1 -1
  765. data/spec/models/free_tool_score_social_audit_request_spec.rb +1 -1
  766. data/spec/models/free_tool_score_social_audit_response_networks_inner_items_inner_spec.rb +1 -1
  767. data/spec/models/free_tool_score_social_audit_response_networks_inner_spec.rb +1 -1
  768. data/spec/models/free_tool_score_social_audit_response_spec.rb +1 -1
  769. data/spec/models/free_tool_score_social_audit_response_top_fixes_inner_spec.rb +1 -1
  770. data/spec/models/free_tool_search_emoji_request_spec.rb +1 -1
  771. data/spec/models/free_tool_search_emoji_response_results_inner_spec.rb +1 -1
  772. data/spec/models/free_tool_search_emoji_response_spec.rb +1 -1
  773. data/spec/models/free_tool_split_thread_request_spec.rb +1 -1
  774. data/spec/models/free_tool_split_thread_response_posts_inner_spec.rb +1 -1
  775. data/spec/models/free_tool_split_thread_response_spec.rb +1 -1
  776. data/spec/models/free_tool_summarize_report_request_rows_inner_spec.rb +84 -0
  777. data/spec/models/{initiate_remote_upload201_response_one_of_spec.rb → free_tool_summarize_report_request_spec.rb} +8 -8
  778. data/spec/models/{initiate_remote_upload201_response_spec.rb → free_tool_summarize_report_response_date_range_spec.rb} +18 -8
  779. data/spec/models/free_tool_summarize_report_response_networks_inner_spec.rb +60 -0
  780. data/spec/models/free_tool_summarize_report_response_spec.rb +90 -0
  781. data/spec/models/free_tool_summarize_report_response_top_posts_inner_spec.rb +54 -0
  782. data/spec/models/free_tool_summarize_report_response_weekdays_inner_spec.rb +54 -0
  783. data/spec/models/free_tool_verify_webhook_signature_request_spec.rb +74 -0
  784. data/spec/models/free_tool_verify_webhook_signature_response_spec.rb +48 -0
  785. data/spec/models/get_account_health200_response_spec.rb +1 -1
  786. data/spec/models/get_brand_voice200_response_spec.rb +1 -1
  787. data/spec/models/get_competitor200_response_spec.rb +1 -1
  788. data/spec/models/get_inbox_conversation200_response_spec.rb +1 -1
  789. data/spec/models/get_posting_schedule200_response_spec.rb +1 -1
  790. data/spec/models/get_remote_upload_status200_response_spec.rb +14 -2
  791. data/spec/models/get_remote_upload_status404_response_spec.rb +46 -0
  792. data/spec/models/get_report_branding200_response_spec.rb +1 -1
  793. data/spec/models/get_repurpose_run200_response_spec.rb +1 -1
  794. data/spec/models/guardrail_error_spec.rb +1 -1
  795. data/spec/models/hashtag_group_input_spec.rb +1 -1
  796. data/spec/models/hashtag_group_spec.rb +1 -1
  797. data/spec/models/image_alt_text200_response_spec.rb +1 -1
  798. data/spec/models/image_alt_text_input_spec.rb +1 -1
  799. data/spec/models/image_alt_text_response_spec.rb +1 -1
  800. data/spec/models/image_credit_balance_spec.rb +1 -1
  801. data/spec/models/image_edit_input_spec.rb +1 -1
  802. data/spec/models/image_generate200_response_spec.rb +1 -1
  803. data/spec/models/image_generate429_response_spec.rb +1 -1
  804. data/spec/models/image_generate_input_spec.rb +1 -1
  805. data/spec/models/image_generation_response_spec.rb +1 -1
  806. data/spec/models/image_prompt200_response_spec.rb +1 -1
  807. data/spec/models/image_prompt429_response_spec.rb +1 -1
  808. data/spec/models/image_prompt_input_spec.rb +1 -1
  809. data/spec/models/image_prompt_response_spec.rb +1 -1
  810. data/spec/models/image_variations200_response_spec.rb +1 -1
  811. data/spec/models/image_variations_input_spec.rb +1 -1
  812. data/spec/models/image_variations_response_spec.rb +1 -1
  813. data/spec/models/inbox_author_spec.rb +1 -1
  814. data/spec/models/inbox_conversation_account_spec.rb +1 -1
  815. data/spec/models/inbox_conversation_spec.rb +1 -1
  816. data/spec/models/inbox_conversation_update_spec.rb +1 -1
  817. data/spec/models/inbox_message_author_spec.rb +1 -1
  818. data/spec/models/inbox_message_spec.rb +1 -1
  819. data/spec/models/inbox_reply_draft_approve_spec.rb +1 -1
  820. data/spec/models/inbox_reply_draft_edit_spec.rb +1 -1
  821. data/spec/models/inbox_reply_draft_input_spec.rb +1 -1
  822. data/spec/models/inbox_reply_draft_spec.rb +1 -1
  823. data/spec/models/initiate_chunked_upload201_response_spec.rb +1 -1
  824. data/spec/models/initiate_chunked_upload_request_spec.rb +1 -1
  825. data/spec/models/initiate_remote_upload200_response_spec.rb +58 -0
  826. data/spec/models/initiate_remote_upload_request_spec.rb +1 -1
  827. data/spec/models/learn_brand_voice_input_spec.rb +1 -1
  828. data/spec/models/learn_brand_voice_response_meta_spec.rb +1 -1
  829. data/spec/models/learn_brand_voice_response_spec.rb +1 -1
  830. data/spec/models/list_account_groups200_response_spec.rb +1 -1
  831. data/spec/models/list_accounts200_response_spec.rb +1 -1
  832. data/spec/models/list_agent_proposals200_response_spec.rb +1 -1
  833. data/spec/models/list_agent_runs200_response_spec.rb +1 -1
  834. data/spec/models/list_agents200_response_spec.rb +1 -1
  835. data/spec/models/list_api_activity200_response_spec.rb +1 -1
  836. data/spec/models/list_api_keys200_response_spec.rb +1 -1
  837. data/spec/models/list_competitors200_response_spec.rb +1 -1
  838. data/spec/models/list_hashtag_groups200_response_spec.rb +1 -1
  839. data/spec/models/list_inbox_conversations200_response_spec.rb +1 -1
  840. data/spec/models/list_inbox_reply_drafts200_response_spec.rb +1 -1
  841. data/spec/models/list_media200_response_spec.rb +1 -1
  842. data/spec/models/list_media_folders200_response_spec.rb +1 -1
  843. data/spec/models/list_mentions200_response_spec.rb +1 -1
  844. data/spec/models/list_my_workspaces200_response_spec.rb +1 -1
  845. data/spec/models/list_posts200_response_spec.rb +1 -1
  846. data/spec/models/list_receipts200_response_spec.rb +1 -1
  847. data/spec/models/list_recycling_rules200_response_spec.rb +1 -1
  848. data/spec/models/list_recycling_runs200_response_spec.rb +1 -1
  849. data/spec/models/list_report_exports200_response_spec.rb +1 -1
  850. data/spec/models/list_reseller_clients200_response_spec.rb +1 -1
  851. data/spec/models/list_rss_feeds200_response_spec.rb +1 -1
  852. data/spec/models/list_tags200_response_spec.rb +1 -1
  853. data/spec/models/list_templates200_response_spec.rb +1 -1
  854. data/spec/models/list_users200_response_spec.rb +1 -1
  855. data/spec/models/list_webhook_subscriptions200_response_spec.rb +1 -1
  856. data/spec/models/list_workspaces200_response_spec.rb +1 -1
  857. data/spec/models/media_base64_input_spec.rb +1 -1
  858. data/spec/models/media_folder_input_spec.rb +1 -1
  859. data/spec/models/media_folder_ref_spec.rb +1 -1
  860. data/spec/models/media_folder_spec.rb +1 -1
  861. data/spec/models/media_spec.rb +1 -1
  862. data/spec/models/mention_identity_input_spec.rb +1 -1
  863. data/spec/models/mention_identity_spec.rb +1 -1
  864. data/spec/models/mention_input_spec.rb +1 -1
  865. data/spec/models/mention_spec.rb +1 -1
  866. data/spec/models/message_only_spec.rb +1 -1
  867. data/spec/models/pagination_meta_links_spec.rb +1 -1
  868. data/spec/models/pagination_meta_meta_spec.rb +1 -1
  869. data/spec/models/pagination_meta_spec.rb +1 -1
  870. data/spec/models/poll_rss_feed200_response_spec.rb +1 -1
  871. data/spec/models/post_analytics_spec.rb +1 -1
  872. data/spec/models/post_content_spec.rb +1 -1
  873. data/spec/models/post_input_spec.rb +1 -1
  874. data/spec/models/post_options_instagram_spec.rb +1 -1
  875. data/spec/models/post_options_tik_tok_spec.rb +1 -1
  876. data/spec/models/post_options_youtube_spec.rb +1 -1
  877. data/spec/models/post_spec.rb +1 -1
  878. data/spec/models/post_status_spec.rb +1 -1
  879. data/spec/models/post_version_options_spec.rb +1 -1
  880. data/spec/models/post_version_spec.rb +1 -1
  881. data/spec/models/post_warning_spec.rb +1 -1
  882. data/spec/models/post_warnings_spec.rb +1 -1
  883. data/spec/models/posting_schedule_day_spec.rb +1 -1
  884. data/spec/models/posting_schedule_day_times_inner_spec.rb +1 -1
  885. data/spec/models/posting_schedule_input_spec.rb +1 -1
  886. data/spec/models/posting_schedule_spec.rb +1 -1
  887. data/spec/models/posting_time_slot_spec.rb +1 -1
  888. data/spec/models/posting_times_best_inner_spec.rb +1 -1
  889. data/spec/models/posting_times_day_intervals_inner_inner_spec.rb +1 -1
  890. data/spec/models/posting_times_days_inner_spec.rb +1 -1
  891. data/spec/models/posting_times_spec.rb +1 -1
  892. data/spec/models/preflight_result_spec.rb +1 -1
  893. data/spec/models/public_workspace_pivot_spec.rb +1 -1
  894. data/spec/models/public_workspace_spec.rb +1 -1
  895. data/spec/models/publish_progress_spec.rb +1 -1
  896. data/spec/models/queue_slots_spec.rb +1 -1
  897. data/spec/models/receipt_input_spec.rb +1 -1
  898. data/spec/models/receipt_spec.rb +1 -1
  899. data/spec/models/receipt_update_input_spec.rb +1 -1
  900. data/spec/models/recommended_posting_times_spec.rb +1 -1
  901. data/spec/models/reconnect_link_spec.rb +1 -1
  902. data/spec/models/recycling_rule_input_spec.rb +1 -1
  903. data/spec/models/recycling_rule_settings_spec.rb +1 -1
  904. data/spec/models/recycling_rule_spec.rb +1 -1
  905. data/spec/models/recycling_rule_update_spec.rb +1 -1
  906. data/spec/models/recycling_run_spec.rb +1 -1
  907. data/spec/models/remove_generic_subscription422_response_spec.rb +1 -1
  908. data/spec/models/remove_user_from_workspace_request_spec.rb +1 -1
  909. data/spec/models/report_branding_input_spec.rb +1 -1
  910. data/spec/models/report_branding_spec.rb +1 -1
  911. data/spec/models/report_export_input_spec.rb +1 -1
  912. data/spec/models/report_export_spec.rb +1 -1
  913. data/spec/models/repurpose_content200_response_spec.rb +1 -1
  914. data/spec/models/repurpose_content202_response_spec.rb +1 -1
  915. data/spec/models/repurpose_content500_response_spec.rb +1 -1
  916. data/spec/models/repurpose_input_spec.rb +1 -1
  917. data/spec/models/repurpose_input_theme_spec.rb +1 -1
  918. data/spec/models/repurpose_result_media_spec.rb +1 -1
  919. data/spec/models/repurpose_result_source_spec.rb +1 -1
  920. data/spec/models/repurpose_result_spec.rb +1 -1
  921. data/spec/models/repurpose_run_accepted_spec.rb +1 -1
  922. data/spec/models/repurpose_run_spec.rb +1 -1
  923. data/spec/models/repurpose_slide_spec.rb +1 -1
  924. data/spec/models/reseller_client_input_spec.rb +1 -1
  925. data/spec/models/reseller_client_spec.rb +1 -1
  926. data/spec/models/reseller_client_usage_spec.rb +1 -1
  927. data/spec/models/retry_post_account_result_spec.rb +1 -1
  928. data/spec/models/rss_feed_input_spec.rb +1 -1
  929. data/spec/models/rss_feed_spec.rb +1 -1
  930. data/spec/models/rss_feed_update_spec.rb +1 -1
  931. data/spec/models/run_agent202_response_spec.rb +1 -1
  932. data/spec/models/schedule_post_request_spec.rb +1 -1
  933. data/spec/models/schedule_result_spec.rb +1 -1
  934. data/spec/models/subscription_input_spec.rb +1 -1
  935. data/spec/models/subscription_spec.rb +1 -1
  936. data/spec/models/subscription_status_spec.rb +1 -1
  937. data/spec/models/subscription_update_input_spec.rb +1 -1
  938. data/spec/models/tag_input_spec.rb +1 -1
  939. data/spec/models/tag_spec.rb +1 -1
  940. data/spec/models/template_content_item_spec.rb +1 -1
  941. data/spec/models/template_input_content_inner_spec.rb +1 -1
  942. data/spec/models/template_input_spec.rb +1 -1
  943. data/spec/models/template_spec.rb +1 -1
  944. data/spec/models/update_media_request_spec.rb +1 -1
  945. data/spec/models/update_post200_response_spec.rb +1 -1
  946. data/spec/models/upload_chunk201_response_spec.rb +1 -1
  947. data/spec/models/user_input_spec.rb +1 -1
  948. data/spec/models/user_spec.rb +1 -1
  949. data/spec/models/user_update_input_spec.rb +1 -1
  950. data/spec/models/webhook_envelope_spec.rb +1 -1
  951. data/spec/models/webhook_event_name_spec.rb +1 -1
  952. data/spec/models/webhook_event_payload_spec.rb +1 -1
  953. data/spec/models/webhook_subscription_input_spec.rb +1 -1
  954. data/spec/models/webhook_subscription_spec.rb +1 -1
  955. data/spec/models/workspace_agent_input_spec.rb +1 -1
  956. data/spec/models/workspace_agent_settings_spec.rb +1 -1
  957. data/spec/models/workspace_agent_spec.rb +1 -1
  958. data/spec/models/workspace_agent_update_spec.rb +1 -1
  959. data/spec/models/workspace_input_spec.rb +1 -1
  960. data/spec/models/workspace_spec.rb +1 -1
  961. data/spec/models/workspace_user_input_spec.rb +1 -1
  962. data/spec/models/x_usage_counter_spec.rb +1 -1
  963. data/spec/models/x_usage_spec.rb +1 -1
  964. data/spec/spec_helper.rb +1 -1
  965. metadata +173 -9
  966. data/docs/InitiateRemoteUpload201Response.md +0 -49
  967. data/docs/InitiateRemoteUpload201ResponseOneOf.md +0 -18
  968. data/lib/postboost/models/initiate_remote_upload201_response.rb +0 -105
@@ -0,0 +1,339 @@
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.57.1
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
+ class FreeToolCalculateSmmPricingResponse
18
+ attr_accessor :currency
19
+
20
+ attr_accessor :pricing_model
21
+
22
+ # Networks × posts per week × 52 ÷ 12, 1 decimal.
23
+ attr_accessor :posts_per_month
24
+
25
+ # Estimated working hours a month, 1 decimal.
26
+ attr_accessor :hours_per_month
27
+
28
+ attr_accessor :hourly_rate
29
+
30
+ # Hours a month × hourly rate, whole currency units.
31
+ attr_accessor :monthly_retainer
32
+
33
+ # Monthly retainer ÷ posts a month, 2 decimals; null with no posts.
34
+ attr_accessor :per_post
35
+
36
+ attr_accessor :range
37
+
38
+ # Every task with hours above 0.
39
+ attr_accessor :line_items
40
+
41
+ attr_accessor :assumptions
42
+
43
+ class EnumAttributeValidator
44
+ attr_reader :datatype
45
+ attr_reader :allowable_values
46
+
47
+ def initialize(datatype, allowable_values)
48
+ @allowable_values = allowable_values.map do |value|
49
+ case datatype.to_s
50
+ when /Integer/i
51
+ value.to_i
52
+ when /Float/i
53
+ value.to_f
54
+ else
55
+ value
56
+ end
57
+ end
58
+ end
59
+
60
+ def valid?(value)
61
+ !value || allowable_values.include?(value)
62
+ end
63
+ end
64
+
65
+ # Attribute mapping from ruby-style variable name to JSON key.
66
+ def self.attribute_map
67
+ {
68
+ :'currency' => :'currency',
69
+ :'pricing_model' => :'pricing_model',
70
+ :'posts_per_month' => :'posts_per_month',
71
+ :'hours_per_month' => :'hours_per_month',
72
+ :'hourly_rate' => :'hourly_rate',
73
+ :'monthly_retainer' => :'monthly_retainer',
74
+ :'per_post' => :'per_post',
75
+ :'range' => :'range',
76
+ :'line_items' => :'line_items',
77
+ :'assumptions' => :'assumptions'
78
+ }
79
+ end
80
+
81
+ # Returns all the JSON keys this model knows about
82
+ def self.acceptable_attributes
83
+ attribute_map.values
84
+ end
85
+
86
+ # Attribute type mapping.
87
+ def self.openapi_types
88
+ {
89
+ :'currency' => :'String',
90
+ :'pricing_model' => :'String',
91
+ :'posts_per_month' => :'Float',
92
+ :'hours_per_month' => :'Float',
93
+ :'hourly_rate' => :'Float',
94
+ :'monthly_retainer' => :'Float',
95
+ :'per_post' => :'Float',
96
+ :'range' => :'FreeToolCalculateSmmPricingResponseRange',
97
+ :'line_items' => :'Array<FreeToolCalculateSmmPricingResponseLineItemsInner>',
98
+ :'assumptions' => :'Array<String>'
99
+ }
100
+ end
101
+
102
+ # List of attributes with nullable: true
103
+ def self.openapi_nullable
104
+ Set.new([
105
+ :'per_post',
106
+ ])
107
+ end
108
+
109
+ # Initializes the object
110
+ # @param [Hash] attributes Model attributes in the form of hash
111
+ def initialize(attributes = {})
112
+ if (!attributes.is_a?(Hash))
113
+ fail ArgumentError, "The input argument (attributes) must be a hash in `PostBoost::FreeToolCalculateSmmPricingResponse` initialize method"
114
+ end
115
+
116
+ # check to see if the attribute exists and convert string to symbol for hash key
117
+ attributes = attributes.each_with_object({}) { |(k, v), h|
118
+ if (!self.class.attribute_map.key?(k.to_sym))
119
+ fail ArgumentError, "`#{k}` is not a valid attribute in `PostBoost::FreeToolCalculateSmmPricingResponse`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
120
+ end
121
+ h[k.to_sym] = v
122
+ }
123
+
124
+ if attributes.key?(:'currency')
125
+ self.currency = attributes[:'currency']
126
+ end
127
+
128
+ if attributes.key?(:'pricing_model')
129
+ self.pricing_model = attributes[:'pricing_model']
130
+ end
131
+
132
+ if attributes.key?(:'posts_per_month')
133
+ self.posts_per_month = attributes[:'posts_per_month']
134
+ end
135
+
136
+ if attributes.key?(:'hours_per_month')
137
+ self.hours_per_month = attributes[:'hours_per_month']
138
+ end
139
+
140
+ if attributes.key?(:'hourly_rate')
141
+ self.hourly_rate = attributes[:'hourly_rate']
142
+ end
143
+
144
+ if attributes.key?(:'monthly_retainer')
145
+ self.monthly_retainer = attributes[:'monthly_retainer']
146
+ end
147
+
148
+ if attributes.key?(:'per_post')
149
+ self.per_post = attributes[:'per_post']
150
+ end
151
+
152
+ if attributes.key?(:'range')
153
+ self.range = attributes[:'range']
154
+ end
155
+
156
+ if attributes.key?(:'line_items')
157
+ if (value = attributes[:'line_items']).is_a?(Array)
158
+ self.line_items = value
159
+ end
160
+ end
161
+
162
+ if attributes.key?(:'assumptions')
163
+ if (value = attributes[:'assumptions']).is_a?(Array)
164
+ self.assumptions = value
165
+ end
166
+ end
167
+ end
168
+
169
+ # Show invalid properties with the reasons. Usually used together with valid?
170
+ # @return Array for valid properties with the reasons
171
+ def list_invalid_properties
172
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
173
+ invalid_properties = Array.new
174
+ invalid_properties
175
+ end
176
+
177
+ # Check to see if the all the properties in the model are valid
178
+ # @return true if the model is valid
179
+ def valid?
180
+ warn '[DEPRECATED] the `valid?` method is obsolete'
181
+ pricing_model_validator = EnumAttributeValidator.new('String', ["hourly", "retainer", "per_post"])
182
+ return false unless pricing_model_validator.valid?(@pricing_model)
183
+ true
184
+ end
185
+
186
+ # Custom attribute writer method checking allowed values (enum).
187
+ # @param [Object] pricing_model Object to be assigned
188
+ def pricing_model=(pricing_model)
189
+ validator = EnumAttributeValidator.new('String', ["hourly", "retainer", "per_post"])
190
+ unless validator.valid?(pricing_model)
191
+ fail ArgumentError, "invalid value for \"pricing_model\", must be one of #{validator.allowable_values}."
192
+ end
193
+ @pricing_model = pricing_model
194
+ end
195
+
196
+ # Checks equality by comparing each attribute.
197
+ # @param [Object] Object to be compared
198
+ def ==(o)
199
+ return true if self.equal?(o)
200
+ self.class == o.class &&
201
+ currency == o.currency &&
202
+ pricing_model == o.pricing_model &&
203
+ posts_per_month == o.posts_per_month &&
204
+ hours_per_month == o.hours_per_month &&
205
+ hourly_rate == o.hourly_rate &&
206
+ monthly_retainer == o.monthly_retainer &&
207
+ per_post == o.per_post &&
208
+ range == o.range &&
209
+ line_items == o.line_items &&
210
+ assumptions == o.assumptions
211
+ end
212
+
213
+ # @see the `==` method
214
+ # @param [Object] Object to be compared
215
+ def eql?(o)
216
+ self == o
217
+ end
218
+
219
+ # Calculates hash code according to all attributes.
220
+ # @return [Integer] Hash code
221
+ def hash
222
+ [currency, pricing_model, posts_per_month, hours_per_month, hourly_rate, monthly_retainer, per_post, range, line_items, assumptions].hash
223
+ end
224
+
225
+ # Builds the object from hash
226
+ # @param [Hash] attributes Model attributes in the form of hash
227
+ # @return [Object] Returns the model itself
228
+ def self.build_from_hash(attributes)
229
+ return nil unless attributes.is_a?(Hash)
230
+ attributes = attributes.transform_keys(&:to_sym)
231
+ transformed_hash = {}
232
+ openapi_types.each_pair do |key, type|
233
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
234
+ transformed_hash["#{key}"] = nil
235
+ elsif type =~ /\AArray<(.*)>/i
236
+ # check to ensure the input is an array given that the attribute
237
+ # is documented as an array but the input is not
238
+ if attributes[attribute_map[key]].is_a?(Array)
239
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
240
+ end
241
+ elsif !attributes[attribute_map[key]].nil?
242
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
243
+ end
244
+ end
245
+ new(transformed_hash)
246
+ end
247
+
248
+ # Deserializes the data based on type
249
+ # @param string type Data type
250
+ # @param string value Value to be deserialized
251
+ # @return [Object] Deserialized data
252
+ def self._deserialize(type, value)
253
+ case type.to_sym
254
+ when :Time
255
+ Time.parse(value)
256
+ when :Date
257
+ Date.parse(value)
258
+ when :String
259
+ value.to_s
260
+ when :Integer
261
+ value.to_i
262
+ when :Float
263
+ value.to_f
264
+ when :Boolean
265
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
266
+ true
267
+ else
268
+ false
269
+ end
270
+ when :Object
271
+ # generic object (usually a Hash), return directly
272
+ value
273
+ when /\AArray<(?<inner_type>.+)>\z/
274
+ inner_type = Regexp.last_match[:inner_type]
275
+ value.map { |v| _deserialize(inner_type, v) }
276
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
277
+ k_type = Regexp.last_match[:k_type]
278
+ v_type = Regexp.last_match[:v_type]
279
+ {}.tap do |hash|
280
+ value.each do |k, v|
281
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
282
+ end
283
+ end
284
+ else # model
285
+ # models (e.g. Pet) or oneOf
286
+ klass = PostBoost.const_get(type)
287
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
288
+ end
289
+ end
290
+
291
+ # Returns the string representation of the object
292
+ # @return [String] String presentation of the object
293
+ def to_s
294
+ to_hash.to_s
295
+ end
296
+
297
+ # to_body is an alias to to_hash (backward compatibility)
298
+ # @return [Hash] Returns the object in the form of hash
299
+ def to_body
300
+ to_hash
301
+ end
302
+
303
+ # Returns the object in the form of hash
304
+ # @return [Hash] Returns the object in the form of hash
305
+ def to_hash
306
+ hash = {}
307
+ self.class.attribute_map.each_pair do |attr, param|
308
+ value = self.send(attr)
309
+ if value.nil?
310
+ is_nullable = self.class.openapi_nullable.include?(attr)
311
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
312
+ end
313
+
314
+ hash[param] = _to_hash(value)
315
+ end
316
+ hash
317
+ end
318
+
319
+ # Outputs non-array value in the form of hash
320
+ # For object, use to_hash. Otherwise, just return the value
321
+ # @param [Object] value Any valid value
322
+ # @return [Hash] Returns the value in the form of hash
323
+ def _to_hash(value)
324
+ if value.is_a?(Array)
325
+ value.compact.map { |v| _to_hash(v) }
326
+ elsif value.is_a?(Hash)
327
+ {}.tap do |hash|
328
+ value.each { |k, v| hash[k] = _to_hash(v) }
329
+ end
330
+ elsif value.respond_to? :to_hash
331
+ value.to_hash
332
+ else
333
+ value
334
+ end
335
+ end
336
+
337
+ end
338
+
339
+ end
@@ -0,0 +1,275 @@
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.57.1
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
+ class FreeToolCalculateSmmPricingResponseLineItemsInner
18
+ attr_accessor :key
19
+
20
+ attr_accessor :label
21
+
22
+ attr_accessor :hours_per_month
23
+
24
+ attr_accessor :amount
25
+
26
+ class EnumAttributeValidator
27
+ attr_reader :datatype
28
+ attr_reader :allowable_values
29
+
30
+ def initialize(datatype, allowable_values)
31
+ @allowable_values = allowable_values.map do |value|
32
+ case datatype.to_s
33
+ when /Integer/i
34
+ value.to_i
35
+ when /Float/i
36
+ value.to_f
37
+ else
38
+ value
39
+ end
40
+ end
41
+ end
42
+
43
+ def valid?(value)
44
+ !value || allowable_values.include?(value)
45
+ end
46
+ end
47
+
48
+ # Attribute mapping from ruby-style variable name to JSON key.
49
+ def self.attribute_map
50
+ {
51
+ :'key' => :'key',
52
+ :'label' => :'label',
53
+ :'hours_per_month' => :'hours_per_month',
54
+ :'amount' => :'amount'
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
+ :'key' => :'String',
67
+ :'label' => :'String',
68
+ :'hours_per_month' => :'Float',
69
+ :'amount' => :'Float'
70
+ }
71
+ end
72
+
73
+ # List of attributes with nullable: true
74
+ def self.openapi_nullable
75
+ Set.new([
76
+ ])
77
+ end
78
+
79
+ # Initializes the object
80
+ # @param [Hash] attributes Model attributes in the form of hash
81
+ def initialize(attributes = {})
82
+ if (!attributes.is_a?(Hash))
83
+ fail ArgumentError, "The input argument (attributes) must be a hash in `PostBoost::FreeToolCalculateSmmPricingResponseLineItemsInner` initialize method"
84
+ end
85
+
86
+ # check to see if the attribute exists and convert string to symbol for hash key
87
+ attributes = attributes.each_with_object({}) { |(k, v), h|
88
+ if (!self.class.attribute_map.key?(k.to_sym))
89
+ fail ArgumentError, "`#{k}` is not a valid attribute in `PostBoost::FreeToolCalculateSmmPricingResponseLineItemsInner`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
90
+ end
91
+ h[k.to_sym] = v
92
+ }
93
+
94
+ if attributes.key?(:'key')
95
+ self.key = attributes[:'key']
96
+ end
97
+
98
+ if attributes.key?(:'label')
99
+ self.label = attributes[:'label']
100
+ end
101
+
102
+ if attributes.key?(:'hours_per_month')
103
+ self.hours_per_month = attributes[:'hours_per_month']
104
+ end
105
+
106
+ if attributes.key?(:'amount')
107
+ self.amount = attributes[:'amount']
108
+ end
109
+ end
110
+
111
+ # Show invalid properties with the reasons. Usually used together with valid?
112
+ # @return Array for valid properties with the reasons
113
+ def list_invalid_properties
114
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
115
+ invalid_properties = Array.new
116
+ invalid_properties
117
+ end
118
+
119
+ # Check to see if the all the properties in the model are valid
120
+ # @return true if the model is valid
121
+ def valid?
122
+ warn '[DEPRECATED] the `valid?` method is obsolete'
123
+ key_validator = EnumAttributeValidator.new('String', ["content", "community", "reporting", "ads"])
124
+ return false unless key_validator.valid?(@key)
125
+ true
126
+ end
127
+
128
+ # Custom attribute writer method checking allowed values (enum).
129
+ # @param [Object] key Object to be assigned
130
+ def key=(key)
131
+ validator = EnumAttributeValidator.new('String', ["content", "community", "reporting", "ads"])
132
+ unless validator.valid?(key)
133
+ fail ArgumentError, "invalid value for \"key\", must be one of #{validator.allowable_values}."
134
+ end
135
+ @key = key
136
+ end
137
+
138
+ # Checks equality by comparing each attribute.
139
+ # @param [Object] Object to be compared
140
+ def ==(o)
141
+ return true if self.equal?(o)
142
+ self.class == o.class &&
143
+ key == o.key &&
144
+ label == o.label &&
145
+ hours_per_month == o.hours_per_month &&
146
+ amount == o.amount
147
+ end
148
+
149
+ # @see the `==` method
150
+ # @param [Object] Object to be compared
151
+ def eql?(o)
152
+ self == o
153
+ end
154
+
155
+ # Calculates hash code according to all attributes.
156
+ # @return [Integer] Hash code
157
+ def hash
158
+ [key, label, hours_per_month, amount].hash
159
+ end
160
+
161
+ # Builds the object from hash
162
+ # @param [Hash] attributes Model attributes in the form of hash
163
+ # @return [Object] Returns the model itself
164
+ def self.build_from_hash(attributes)
165
+ return nil unless attributes.is_a?(Hash)
166
+ attributes = attributes.transform_keys(&:to_sym)
167
+ transformed_hash = {}
168
+ openapi_types.each_pair do |key, type|
169
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
170
+ transformed_hash["#{key}"] = nil
171
+ elsif type =~ /\AArray<(.*)>/i
172
+ # check to ensure the input is an array given that the attribute
173
+ # is documented as an array but the input is not
174
+ if attributes[attribute_map[key]].is_a?(Array)
175
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
176
+ end
177
+ elsif !attributes[attribute_map[key]].nil?
178
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
179
+ end
180
+ end
181
+ new(transformed_hash)
182
+ end
183
+
184
+ # Deserializes the data based on type
185
+ # @param string type Data type
186
+ # @param string value Value to be deserialized
187
+ # @return [Object] Deserialized data
188
+ def self._deserialize(type, value)
189
+ case type.to_sym
190
+ when :Time
191
+ Time.parse(value)
192
+ when :Date
193
+ Date.parse(value)
194
+ when :String
195
+ value.to_s
196
+ when :Integer
197
+ value.to_i
198
+ when :Float
199
+ value.to_f
200
+ when :Boolean
201
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
202
+ true
203
+ else
204
+ false
205
+ end
206
+ when :Object
207
+ # generic object (usually a Hash), return directly
208
+ value
209
+ when /\AArray<(?<inner_type>.+)>\z/
210
+ inner_type = Regexp.last_match[:inner_type]
211
+ value.map { |v| _deserialize(inner_type, v) }
212
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
213
+ k_type = Regexp.last_match[:k_type]
214
+ v_type = Regexp.last_match[:v_type]
215
+ {}.tap do |hash|
216
+ value.each do |k, v|
217
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
218
+ end
219
+ end
220
+ else # model
221
+ # models (e.g. Pet) or oneOf
222
+ klass = PostBoost.const_get(type)
223
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
224
+ end
225
+ end
226
+
227
+ # Returns the string representation of the object
228
+ # @return [String] String presentation of the object
229
+ def to_s
230
+ to_hash.to_s
231
+ end
232
+
233
+ # to_body is an alias to to_hash (backward compatibility)
234
+ # @return [Hash] Returns the object in the form of hash
235
+ def to_body
236
+ to_hash
237
+ end
238
+
239
+ # Returns the object in the form of hash
240
+ # @return [Hash] Returns the object in the form of hash
241
+ def to_hash
242
+ hash = {}
243
+ self.class.attribute_map.each_pair do |attr, param|
244
+ value = self.send(attr)
245
+ if value.nil?
246
+ is_nullable = self.class.openapi_nullable.include?(attr)
247
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
248
+ end
249
+
250
+ hash[param] = _to_hash(value)
251
+ end
252
+ hash
253
+ end
254
+
255
+ # Outputs non-array value in the form of hash
256
+ # For object, use to_hash. Otherwise, just return the value
257
+ # @param [Object] value Any valid value
258
+ # @return [Hash] Returns the value in the form of hash
259
+ def _to_hash(value)
260
+ if value.is_a?(Array)
261
+ value.compact.map { |v| _to_hash(v) }
262
+ elsif value.is_a?(Hash)
263
+ {}.tap do |hash|
264
+ value.each { |k, v| hash[k] = _to_hash(v) }
265
+ end
266
+ elsif value.respond_to? :to_hash
267
+ value.to_hash
268
+ else
269
+ value
270
+ end
271
+ end
272
+
273
+ end
274
+
275
+ end