postboost 1.27.1 → 1.29.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.
- checksums.yaml +4 -4
- data/README.md +3 -1
- data/docs/FreeToolError.md +4 -2
- data/docs/FreeToolGenerateCaptionRequest.md +30 -0
- data/docs/FreeToolGenerateCaptionResponse.md +22 -0
- data/docs/FreeToolGenerateHashtagsRequest.md +24 -0
- data/docs/FreeToolGenerateHashtagsResponse.md +22 -0
- data/docs/FreeToolsApi.md +140 -0
- data/lib/postboost/api/account_groups_api.rb +1 -1
- data/lib/postboost/api/accounts_api.rb +1 -1
- data/lib/postboost/api/activity_api.rb +1 -1
- data/lib/postboost/api/agents_api.rb +1 -1
- data/lib/postboost/api/ai_api.rb +1 -1
- data/lib/postboost/api/analytics_api.rb +1 -1
- data/lib/postboost/api/competitors_api.rb +1 -1
- data/lib/postboost/api/free_tools_api.rb +137 -1
- data/lib/postboost/api/hashtag_groups_api.rb +1 -1
- data/lib/postboost/api/inbox_api.rb +1 -1
- data/lib/postboost/api/media_api.rb +1 -1
- data/lib/postboost/api/mentions_api.rb +1 -1
- data/lib/postboost/api/posting_schedule_api.rb +1 -1
- data/lib/postboost/api/posts_api.rb +1 -1
- data/lib/postboost/api/receipts_api.rb +1 -1
- data/lib/postboost/api/subscriptions_api.rb +1 -1
- data/lib/postboost/api/tags_api.rb +1 -1
- data/lib/postboost/api/templates_api.rb +1 -1
- data/lib/postboost/api/users_api.rb +1 -1
- data/lib/postboost/api/webhooks_api.rb +1 -1
- data/lib/postboost/api/workspaces_api.rb +1 -1
- data/lib/postboost/api_client.rb +1 -1
- data/lib/postboost/api_error.rb +1 -1
- data/lib/postboost/configuration.rb +1 -1
- data/lib/postboost/models/account.rb +1 -1
- data/lib/postboost/models/account_analytics.rb +1 -1
- data/lib/postboost/models/account_analytics_initial_sync.rb +1 -1
- data/lib/postboost/models/account_connection_health.rb +1 -1
- data/lib/postboost/models/account_errors_inner.rb +1 -1
- data/lib/postboost/models/account_errors_inner_one_of.rb +1 -1
- data/lib/postboost/models/account_group.rb +1 -1
- data/lib/postboost/models/account_group_input.rb +1 -1
- data/lib/postboost/models/account_health.rb +1 -1
- data/lib/postboost/models/account_health_daily_cap.rb +1 -1
- data/lib/postboost/models/account_schedule.rb +1 -1
- data/lib/postboost/models/add_competitor202_response.rb +1 -1
- data/lib/postboost/models/add_competitor409_response.rb +1 -1
- data/lib/postboost/models/add_generic_subscription_request.rb +1 -1
- data/lib/postboost/models/add_post_to_queue_request.rb +1 -1
- data/lib/postboost/models/agent_page_meta.rb +1 -1
- data/lib/postboost/models/agent_proposal.rb +1 -1
- data/lib/postboost/models/agent_proposal_decision.rb +1 -1
- data/lib/postboost/models/agent_run.rb +1 -1
- data/lib/postboost/models/ai_credits.rb +1 -1
- data/lib/postboost/models/ai_usage.rb +1 -1
- data/lib/postboost/models/ai_usage_text.rb +1 -1
- data/lib/postboost/models/analytics_period.rb +1 -1
- data/lib/postboost/models/analytics_summary.rb +1 -1
- data/lib/postboost/models/analytics_summary_data.rb +1 -1
- data/lib/postboost/models/api_activity.rb +1 -1
- data/lib/postboost/models/api_activity_outcome.rb +1 -1
- data/lib/postboost/models/api_key.rb +1 -1
- data/lib/postboost/models/api_key_ability.rb +1 -1
- data/lib/postboost/models/api_key_input.rb +1 -1
- data/lib/postboost/models/approve_agent_proposal200_response.rb +1 -1
- data/lib/postboost/models/approve_agent_proposal409_response.rb +1 -1
- data/lib/postboost/models/approve_inbox_reply_draft403_response.rb +1 -1
- data/lib/postboost/models/approve_post_request.rb +1 -1
- data/lib/postboost/models/best_posting_times.rb +1 -1
- data/lib/postboost/models/best_posting_times_times_inner.rb +1 -1
- data/lib/postboost/models/blog_to_social200_response.rb +1 -1
- data/lib/postboost/models/blog_to_social429_response.rb +1 -1
- data/lib/postboost/models/blog_to_social_caption.rb +1 -1
- data/lib/postboost/models/blog_to_social_input.rb +1 -1
- data/lib/postboost/models/blog_to_social_media.rb +1 -1
- data/lib/postboost/models/blog_to_social_response.rb +1 -1
- data/lib/postboost/models/brand_voice.rb +1 -1
- data/lib/postboost/models/brand_voice_input.rb +1 -1
- data/lib/postboost/models/brand_voice_meta.rb +1 -1
- data/lib/postboost/models/cancel_subscription422_response.rb +1 -1
- data/lib/postboost/models/cancel_subscription422_response_errors.rb +1 -1
- data/lib/postboost/models/cancel_subscription_request.rb +1 -1
- data/lib/postboost/models/change_subscription_plan_request.rb +1 -1
- data/lib/postboost/models/channel_account.rb +1 -1
- data/lib/postboost/models/checkout_subscription200_response.rb +1 -1
- data/lib/postboost/models/checkout_subscription_request.rb +1 -1
- data/lib/postboost/models/coded_error.rb +1 -1
- data/lib/postboost/models/competitor.rb +1 -1
- data/lib/postboost/models/competitor_detail.rb +1 -1
- data/lib/postboost/models/competitor_input.rb +1 -1
- data/lib/postboost/models/competitor_media.rb +1 -1
- data/lib/postboost/models/competitor_snapshot.rb +1 -1
- data/lib/postboost/models/complete_chunked_upload_request.rb +1 -1
- data/lib/postboost/models/connect_channel_input.rb +1 -1
- data/lib/postboost/models/connect_link.rb +1 -1
- data/lib/postboost/models/create_account_group201_response.rb +1 -1
- data/lib/postboost/models/create_agent201_response.rb +1 -1
- data/lib/postboost/models/create_api_key201_response.rb +1 -1
- data/lib/postboost/models/create_api_key201_response_data.rb +1 -1
- data/lib/postboost/models/create_connect_link_request.rb +1 -1
- data/lib/postboost/models/create_hashtag_group201_response.rb +1 -1
- data/lib/postboost/models/create_inbox_reply_draft201_response.rb +1 -1
- data/lib/postboost/models/create_media_folder_request.rb +1 -1
- data/lib/postboost/models/create_mention201_response.rb +1 -1
- data/lib/postboost/models/create_post201_response.rb +1 -1
- data/lib/postboost/models/create_recycling_rule201_response.rb +1 -1
- data/lib/postboost/models/create_report_export201_response.rb +1 -1
- data/lib/postboost/models/create_reseller_client201_response.rb +1 -1
- data/lib/postboost/models/create_rss_feed201_response.rb +1 -1
- data/lib/postboost/models/create_template201_response.rb +1 -1
- data/lib/postboost/models/create_webhook_subscription201_response.rb +1 -1
- data/lib/postboost/models/create_webhook_subscription201_response_data.rb +1 -1
- data/lib/postboost/models/delete_agent200_response.rb +1 -1
- data/lib/postboost/models/delete_media_bulk_request.rb +1 -1
- data/lib/postboost/models/delete_media_bulk_request_items_inner.rb +1 -1
- data/lib/postboost/models/delete_media_folder_request.rb +1 -1
- data/lib/postboost/models/delete_mode.rb +1 -1
- data/lib/postboost/models/delete_post_request.rb +1 -1
- data/lib/postboost/models/delete_posts_bulk_request.rb +1 -1
- data/lib/postboost/models/delete_receipts_bulk_request.rb +1 -1
- data/lib/postboost/models/delete_result.rb +1 -1
- data/lib/postboost/models/delete_user400_response.rb +1 -1
- data/lib/postboost/models/delete_users_bulk_request.rb +1 -1
- data/lib/postboost/models/delete_workspaces_bulk_request.rb +1 -1
- data/lib/postboost/models/free_tool_build_utm_url_request.rb +1 -1
- data/lib/postboost/models/free_tool_build_utm_url_response.rb +1 -1
- data/lib/postboost/models/free_tool_calculate_engagement_rate_request.rb +1 -1
- data/lib/postboost/models/free_tool_calculate_engagement_rate_response.rb +1 -1
- data/lib/postboost/models/free_tool_check_post_request.rb +1 -1
- data/lib/postboost/models/free_tool_check_post_request_media.rb +1 -1
- data/lib/postboost/models/free_tool_check_post_response.rb +1 -1
- data/lib/postboost/models/free_tool_check_post_response_networks_inner.rb +1 -1
- data/lib/postboost/models/free_tool_check_post_response_networks_inner_errors_inner.rb +1 -1
- data/lib/postboost/models/free_tool_clean_text_request.rb +1 -1
- data/lib/postboost/models/free_tool_clean_text_response.rb +1 -1
- data/lib/postboost/models/free_tool_clean_text_response_changes_inner.rb +1 -1
- data/lib/postboost/models/free_tool_clean_text_response_flags_inner.rb +1 -1
- data/lib/postboost/models/free_tool_count_characters_request.rb +1 -1
- data/lib/postboost/models/free_tool_count_characters_response.rb +1 -1
- data/lib/postboost/models/free_tool_count_characters_response_networks_inner.rb +1 -1
- data/lib/postboost/models/free_tool_error.rb +14 -4
- data/lib/postboost/models/free_tool_format_linked_in_post_request.rb +1 -1
- data/lib/postboost/models/free_tool_format_linked_in_post_response.rb +1 -1
- data/lib/postboost/models/free_tool_generate_caption_request.rb +396 -0
- data/lib/postboost/models/free_tool_generate_caption_response.rb +237 -0
- data/lib/postboost/models/free_tool_generate_fancy_text_request.rb +1 -1
- data/lib/postboost/models/free_tool_generate_fancy_text_response.rb +1 -1
- data/lib/postboost/models/free_tool_generate_fancy_text_response_styles_inner.rb +1 -1
- data/lib/postboost/models/free_tool_generate_hashtags_request.rb +354 -0
- data/lib/postboost/models/free_tool_generate_hashtags_response.rb +237 -0
- data/lib/postboost/models/free_tool_list.rb +1 -1
- data/lib/postboost/models/free_tool_list_item.rb +1 -1
- data/lib/postboost/models/free_tool_split_thread_request.rb +1 -1
- data/lib/postboost/models/free_tool_split_thread_response.rb +1 -1
- data/lib/postboost/models/free_tool_split_thread_response_posts_inner.rb +1 -1
- data/lib/postboost/models/get_account_health200_response.rb +1 -1
- data/lib/postboost/models/get_brand_voice200_response.rb +1 -1
- data/lib/postboost/models/get_competitor200_response.rb +1 -1
- data/lib/postboost/models/get_inbox_conversation200_response.rb +1 -1
- data/lib/postboost/models/get_posting_schedule200_response.rb +1 -1
- data/lib/postboost/models/get_remote_upload_status200_response.rb +1 -1
- data/lib/postboost/models/get_report_branding200_response.rb +1 -1
- data/lib/postboost/models/get_repurpose_run200_response.rb +1 -1
- data/lib/postboost/models/guardrail_error.rb +1 -1
- data/lib/postboost/models/hashtag_group.rb +1 -1
- data/lib/postboost/models/hashtag_group_input.rb +1 -1
- data/lib/postboost/models/image_alt_text200_response.rb +1 -1
- data/lib/postboost/models/image_alt_text_input.rb +1 -1
- data/lib/postboost/models/image_alt_text_response.rb +1 -1
- data/lib/postboost/models/image_credit_balance.rb +1 -1
- data/lib/postboost/models/image_edit_input.rb +1 -1
- data/lib/postboost/models/image_generate200_response.rb +1 -1
- data/lib/postboost/models/image_generate429_response.rb +1 -1
- data/lib/postboost/models/image_generate_input.rb +1 -1
- data/lib/postboost/models/image_generation_response.rb +1 -1
- data/lib/postboost/models/image_prompt200_response.rb +1 -1
- data/lib/postboost/models/image_prompt429_response.rb +1 -1
- data/lib/postboost/models/image_prompt_input.rb +1 -1
- data/lib/postboost/models/image_prompt_response.rb +1 -1
- data/lib/postboost/models/image_variations200_response.rb +1 -1
- data/lib/postboost/models/image_variations_input.rb +1 -1
- data/lib/postboost/models/image_variations_response.rb +1 -1
- data/lib/postboost/models/inbox_author.rb +1 -1
- data/lib/postboost/models/inbox_conversation.rb +1 -1
- data/lib/postboost/models/inbox_conversation_account.rb +1 -1
- data/lib/postboost/models/inbox_conversation_update.rb +1 -1
- data/lib/postboost/models/inbox_message.rb +1 -1
- data/lib/postboost/models/inbox_message_author.rb +1 -1
- data/lib/postboost/models/inbox_reply_draft.rb +1 -1
- data/lib/postboost/models/inbox_reply_draft_approve.rb +1 -1
- data/lib/postboost/models/inbox_reply_draft_edit.rb +1 -1
- data/lib/postboost/models/inbox_reply_draft_input.rb +1 -1
- data/lib/postboost/models/initiate_chunked_upload201_response.rb +1 -1
- data/lib/postboost/models/initiate_chunked_upload_request.rb +1 -1
- data/lib/postboost/models/initiate_remote_upload201_response.rb +1 -1
- data/lib/postboost/models/initiate_remote_upload201_response_one_of.rb +1 -1
- data/lib/postboost/models/initiate_remote_upload_request.rb +1 -1
- data/lib/postboost/models/learn_brand_voice_input.rb +1 -1
- data/lib/postboost/models/learn_brand_voice_response.rb +1 -1
- data/lib/postboost/models/learn_brand_voice_response_meta.rb +1 -1
- data/lib/postboost/models/list_account_groups200_response.rb +1 -1
- data/lib/postboost/models/list_accounts200_response.rb +1 -1
- data/lib/postboost/models/list_agent_proposals200_response.rb +1 -1
- data/lib/postboost/models/list_agent_runs200_response.rb +1 -1
- data/lib/postboost/models/list_agents200_response.rb +1 -1
- data/lib/postboost/models/list_api_activity200_response.rb +1 -1
- data/lib/postboost/models/list_api_keys200_response.rb +1 -1
- data/lib/postboost/models/list_competitors200_response.rb +1 -1
- data/lib/postboost/models/list_hashtag_groups200_response.rb +1 -1
- data/lib/postboost/models/list_inbox_conversations200_response.rb +1 -1
- data/lib/postboost/models/list_inbox_reply_drafts200_response.rb +1 -1
- data/lib/postboost/models/list_media200_response.rb +1 -1
- data/lib/postboost/models/list_media_folders200_response.rb +1 -1
- data/lib/postboost/models/list_mentions200_response.rb +1 -1
- data/lib/postboost/models/list_my_workspaces200_response.rb +1 -1
- data/lib/postboost/models/list_posts200_response.rb +1 -1
- data/lib/postboost/models/list_receipts200_response.rb +1 -1
- data/lib/postboost/models/list_recycling_rules200_response.rb +1 -1
- data/lib/postboost/models/list_recycling_runs200_response.rb +1 -1
- data/lib/postboost/models/list_report_exports200_response.rb +1 -1
- data/lib/postboost/models/list_reseller_clients200_response.rb +1 -1
- data/lib/postboost/models/list_rss_feeds200_response.rb +1 -1
- data/lib/postboost/models/list_tags200_response.rb +1 -1
- data/lib/postboost/models/list_templates200_response.rb +1 -1
- data/lib/postboost/models/list_users200_response.rb +1 -1
- data/lib/postboost/models/list_webhook_subscriptions200_response.rb +1 -1
- data/lib/postboost/models/list_workspaces200_response.rb +1 -1
- data/lib/postboost/models/media.rb +1 -1
- data/lib/postboost/models/media_base64_input.rb +1 -1
- data/lib/postboost/models/media_folder.rb +1 -1
- data/lib/postboost/models/media_folder_input.rb +1 -1
- data/lib/postboost/models/media_folder_ref.rb +1 -1
- data/lib/postboost/models/mention.rb +1 -1
- data/lib/postboost/models/mention_identity.rb +1 -1
- data/lib/postboost/models/mention_identity_input.rb +1 -1
- data/lib/postboost/models/mention_input.rb +1 -1
- data/lib/postboost/models/message_only.rb +1 -1
- data/lib/postboost/models/pagination_meta.rb +1 -1
- data/lib/postboost/models/pagination_meta_links.rb +1 -1
- data/lib/postboost/models/pagination_meta_meta.rb +1 -1
- data/lib/postboost/models/poll_rss_feed200_response.rb +1 -1
- data/lib/postboost/models/post.rb +1 -1
- data/lib/postboost/models/post_analytics.rb +1 -1
- data/lib/postboost/models/post_content.rb +1 -1
- data/lib/postboost/models/post_input.rb +1 -1
- data/lib/postboost/models/post_options_instagram.rb +1 -1
- data/lib/postboost/models/post_options_tik_tok.rb +1 -1
- data/lib/postboost/models/post_options_youtube.rb +1 -1
- data/lib/postboost/models/post_status.rb +1 -1
- data/lib/postboost/models/post_version.rb +1 -1
- data/lib/postboost/models/post_version_options.rb +1 -1
- data/lib/postboost/models/post_warning.rb +4 -4
- data/lib/postboost/models/post_warnings.rb +1 -1
- data/lib/postboost/models/posting_schedule.rb +1 -1
- data/lib/postboost/models/posting_schedule_day.rb +1 -1
- data/lib/postboost/models/posting_schedule_day_times_inner.rb +1 -1
- data/lib/postboost/models/posting_schedule_input.rb +1 -1
- data/lib/postboost/models/posting_time_slot.rb +1 -1
- data/lib/postboost/models/posting_times.rb +1 -1
- data/lib/postboost/models/posting_times_best_inner.rb +1 -1
- data/lib/postboost/models/posting_times_day_intervals_inner_inner.rb +1 -1
- data/lib/postboost/models/posting_times_days_inner.rb +1 -1
- data/lib/postboost/models/preflight_result.rb +1 -1
- data/lib/postboost/models/public_workspace.rb +1 -1
- data/lib/postboost/models/public_workspace_pivot.rb +1 -1
- data/lib/postboost/models/publish_progress.rb +1 -1
- data/lib/postboost/models/queue_slots.rb +1 -1
- data/lib/postboost/models/receipt.rb +1 -1
- data/lib/postboost/models/receipt_input.rb +1 -1
- data/lib/postboost/models/receipt_update_input.rb +1 -1
- data/lib/postboost/models/recommended_posting_times.rb +1 -1
- data/lib/postboost/models/reconnect_link.rb +1 -1
- data/lib/postboost/models/recycling_rule.rb +1 -1
- data/lib/postboost/models/recycling_rule_input.rb +1 -1
- data/lib/postboost/models/recycling_rule_settings.rb +1 -1
- data/lib/postboost/models/recycling_rule_update.rb +1 -1
- data/lib/postboost/models/recycling_run.rb +1 -1
- data/lib/postboost/models/remove_generic_subscription422_response.rb +1 -1
- data/lib/postboost/models/remove_user_from_workspace_request.rb +1 -1
- data/lib/postboost/models/report_branding.rb +1 -1
- data/lib/postboost/models/report_branding_input.rb +1 -1
- data/lib/postboost/models/report_export.rb +1 -1
- data/lib/postboost/models/report_export_input.rb +1 -1
- data/lib/postboost/models/repurpose_content200_response.rb +1 -1
- data/lib/postboost/models/repurpose_content202_response.rb +1 -1
- data/lib/postboost/models/repurpose_content500_response.rb +1 -1
- data/lib/postboost/models/repurpose_input.rb +1 -1
- data/lib/postboost/models/repurpose_input_theme.rb +1 -1
- data/lib/postboost/models/repurpose_result.rb +1 -1
- data/lib/postboost/models/repurpose_result_media.rb +1 -1
- data/lib/postboost/models/repurpose_result_source.rb +1 -1
- data/lib/postboost/models/repurpose_run.rb +1 -1
- data/lib/postboost/models/repurpose_run_accepted.rb +1 -1
- data/lib/postboost/models/repurpose_slide.rb +1 -1
- data/lib/postboost/models/reseller_client.rb +1 -1
- data/lib/postboost/models/reseller_client_input.rb +1 -1
- data/lib/postboost/models/reseller_client_usage.rb +1 -1
- data/lib/postboost/models/retry_post_account_result.rb +1 -1
- data/lib/postboost/models/rss_feed.rb +1 -1
- data/lib/postboost/models/rss_feed_input.rb +1 -1
- data/lib/postboost/models/rss_feed_update.rb +1 -1
- data/lib/postboost/models/run_agent202_response.rb +1 -1
- data/lib/postboost/models/schedule_post_request.rb +1 -1
- data/lib/postboost/models/schedule_result.rb +1 -1
- data/lib/postboost/models/subscription.rb +1 -1
- data/lib/postboost/models/subscription_input.rb +1 -1
- data/lib/postboost/models/subscription_status.rb +1 -1
- data/lib/postboost/models/subscription_update_input.rb +1 -1
- data/lib/postboost/models/tag.rb +1 -1
- data/lib/postboost/models/tag_input.rb +1 -1
- data/lib/postboost/models/template.rb +1 -1
- data/lib/postboost/models/template_content_item.rb +1 -1
- data/lib/postboost/models/template_input.rb +1 -1
- data/lib/postboost/models/template_input_content_inner.rb +1 -1
- data/lib/postboost/models/update_media_request.rb +1 -1
- data/lib/postboost/models/update_post200_response.rb +1 -1
- data/lib/postboost/models/upload_chunk201_response.rb +1 -1
- data/lib/postboost/models/user.rb +1 -1
- data/lib/postboost/models/user_input.rb +1 -1
- data/lib/postboost/models/user_update_input.rb +1 -1
- data/lib/postboost/models/webhook_event_name.rb +1 -1
- data/lib/postboost/models/webhook_event_payload.rb +1 -1
- data/lib/postboost/models/webhook_subscription.rb +1 -1
- data/lib/postboost/models/webhook_subscription_input.rb +1 -1
- data/lib/postboost/models/workspace.rb +1 -1
- data/lib/postboost/models/workspace_agent.rb +1 -1
- data/lib/postboost/models/workspace_agent_input.rb +1 -1
- data/lib/postboost/models/workspace_agent_settings.rb +1 -1
- data/lib/postboost/models/workspace_agent_update.rb +1 -1
- data/lib/postboost/models/workspace_input.rb +1 -1
- data/lib/postboost/models/workspace_user_input.rb +1 -1
- data/lib/postboost/models/x_usage.rb +1 -1
- data/lib/postboost/models/x_usage_counter.rb +1 -1
- data/lib/postboost/version.rb +2 -2
- data/lib/postboost.rb +5 -1
- data/postboost.gemspec +1 -1
- data/spec/api/account_groups_api_spec.rb +1 -1
- data/spec/api/accounts_api_spec.rb +1 -1
- data/spec/api/activity_api_spec.rb +1 -1
- data/spec/api/agents_api_spec.rb +1 -1
- data/spec/api/ai_api_spec.rb +1 -1
- data/spec/api/analytics_api_spec.rb +1 -1
- data/spec/api/competitors_api_spec.rb +1 -1
- data/spec/api/free_tools_api_spec.rb +25 -1
- data/spec/api/hashtag_groups_api_spec.rb +1 -1
- data/spec/api/inbox_api_spec.rb +1 -1
- data/spec/api/media_api_spec.rb +1 -1
- data/spec/api/mentions_api_spec.rb +1 -1
- data/spec/api/posting_schedule_api_spec.rb +1 -1
- data/spec/api/posts_api_spec.rb +1 -1
- data/spec/api/receipts_api_spec.rb +1 -1
- data/spec/api/subscriptions_api_spec.rb +1 -1
- data/spec/api/tags_api_spec.rb +1 -1
- data/spec/api/templates_api_spec.rb +1 -1
- data/spec/api/users_api_spec.rb +1 -1
- data/spec/api/webhooks_api_spec.rb +1 -1
- data/spec/api/workspaces_api_spec.rb +1 -1
- data/spec/models/account_analytics_initial_sync_spec.rb +1 -1
- data/spec/models/account_analytics_spec.rb +1 -1
- data/spec/models/account_connection_health_spec.rb +1 -1
- data/spec/models/account_errors_inner_one_of_spec.rb +1 -1
- data/spec/models/account_errors_inner_spec.rb +1 -1
- data/spec/models/account_group_input_spec.rb +1 -1
- data/spec/models/account_group_spec.rb +1 -1
- data/spec/models/account_health_daily_cap_spec.rb +1 -1
- data/spec/models/account_health_spec.rb +1 -1
- data/spec/models/account_schedule_spec.rb +1 -1
- data/spec/models/account_spec.rb +1 -1
- data/spec/models/add_competitor202_response_spec.rb +1 -1
- data/spec/models/add_competitor409_response_spec.rb +1 -1
- data/spec/models/add_generic_subscription_request_spec.rb +1 -1
- data/spec/models/add_post_to_queue_request_spec.rb +1 -1
- data/spec/models/agent_page_meta_spec.rb +1 -1
- data/spec/models/agent_proposal_decision_spec.rb +1 -1
- data/spec/models/agent_proposal_spec.rb +1 -1
- data/spec/models/agent_run_spec.rb +1 -1
- data/spec/models/ai_credits_spec.rb +1 -1
- data/spec/models/ai_usage_spec.rb +1 -1
- data/spec/models/ai_usage_text_spec.rb +1 -1
- data/spec/models/analytics_period_spec.rb +1 -1
- data/spec/models/analytics_summary_data_spec.rb +1 -1
- data/spec/models/analytics_summary_spec.rb +1 -1
- data/spec/models/api_activity_outcome_spec.rb +1 -1
- data/spec/models/api_activity_spec.rb +1 -1
- data/spec/models/api_key_ability_spec.rb +1 -1
- data/spec/models/api_key_input_spec.rb +1 -1
- data/spec/models/api_key_spec.rb +1 -1
- data/spec/models/approve_agent_proposal200_response_spec.rb +1 -1
- data/spec/models/approve_agent_proposal409_response_spec.rb +1 -1
- data/spec/models/approve_inbox_reply_draft403_response_spec.rb +1 -1
- data/spec/models/approve_post_request_spec.rb +1 -1
- data/spec/models/best_posting_times_spec.rb +1 -1
- data/spec/models/best_posting_times_times_inner_spec.rb +1 -1
- data/spec/models/blog_to_social200_response_spec.rb +1 -1
- data/spec/models/blog_to_social429_response_spec.rb +1 -1
- data/spec/models/blog_to_social_caption_spec.rb +1 -1
- data/spec/models/blog_to_social_input_spec.rb +1 -1
- data/spec/models/blog_to_social_media_spec.rb +1 -1
- data/spec/models/blog_to_social_response_spec.rb +1 -1
- data/spec/models/brand_voice_input_spec.rb +1 -1
- data/spec/models/brand_voice_meta_spec.rb +1 -1
- data/spec/models/brand_voice_spec.rb +1 -1
- data/spec/models/cancel_subscription422_response_errors_spec.rb +1 -1
- data/spec/models/cancel_subscription422_response_spec.rb +1 -1
- data/spec/models/cancel_subscription_request_spec.rb +1 -1
- data/spec/models/change_subscription_plan_request_spec.rb +1 -1
- data/spec/models/channel_account_spec.rb +1 -1
- data/spec/models/checkout_subscription200_response_spec.rb +1 -1
- data/spec/models/checkout_subscription_request_spec.rb +1 -1
- data/spec/models/coded_error_spec.rb +1 -1
- data/spec/models/competitor_detail_spec.rb +1 -1
- data/spec/models/competitor_input_spec.rb +1 -1
- data/spec/models/competitor_media_spec.rb +1 -1
- data/spec/models/competitor_snapshot_spec.rb +1 -1
- data/spec/models/competitor_spec.rb +1 -1
- data/spec/models/complete_chunked_upload_request_spec.rb +1 -1
- data/spec/models/connect_channel_input_spec.rb +1 -1
- data/spec/models/connect_link_spec.rb +1 -1
- data/spec/models/create_account_group201_response_spec.rb +1 -1
- data/spec/models/create_agent201_response_spec.rb +1 -1
- data/spec/models/create_api_key201_response_data_spec.rb +1 -1
- data/spec/models/create_api_key201_response_spec.rb +1 -1
- data/spec/models/create_connect_link_request_spec.rb +1 -1
- data/spec/models/create_hashtag_group201_response_spec.rb +1 -1
- data/spec/models/create_inbox_reply_draft201_response_spec.rb +1 -1
- data/spec/models/create_media_folder_request_spec.rb +1 -1
- data/spec/models/create_mention201_response_spec.rb +1 -1
- data/spec/models/create_post201_response_spec.rb +1 -1
- data/spec/models/create_recycling_rule201_response_spec.rb +1 -1
- data/spec/models/create_report_export201_response_spec.rb +1 -1
- data/spec/models/create_reseller_client201_response_spec.rb +1 -1
- data/spec/models/create_rss_feed201_response_spec.rb +1 -1
- data/spec/models/create_template201_response_spec.rb +1 -1
- data/spec/models/create_webhook_subscription201_response_data_spec.rb +1 -1
- data/spec/models/create_webhook_subscription201_response_spec.rb +1 -1
- data/spec/models/delete_agent200_response_spec.rb +1 -1
- data/spec/models/delete_media_bulk_request_items_inner_spec.rb +1 -1
- data/spec/models/delete_media_bulk_request_spec.rb +1 -1
- data/spec/models/delete_media_folder_request_spec.rb +1 -1
- data/spec/models/delete_mode_spec.rb +1 -1
- data/spec/models/delete_post_request_spec.rb +1 -1
- data/spec/models/delete_posts_bulk_request_spec.rb +1 -1
- data/spec/models/delete_receipts_bulk_request_spec.rb +1 -1
- data/spec/models/delete_result_spec.rb +1 -1
- data/spec/models/delete_user400_response_spec.rb +1 -1
- data/spec/models/delete_users_bulk_request_spec.rb +1 -1
- data/spec/models/delete_workspaces_bulk_request_spec.rb +1 -1
- data/spec/models/free_tool_build_utm_url_request_spec.rb +1 -1
- data/spec/models/free_tool_build_utm_url_response_spec.rb +1 -1
- data/spec/models/free_tool_calculate_engagement_rate_request_spec.rb +1 -1
- data/spec/models/free_tool_calculate_engagement_rate_response_spec.rb +1 -1
- data/spec/models/free_tool_check_post_request_media_spec.rb +1 -1
- data/spec/models/free_tool_check_post_request_spec.rb +1 -1
- data/spec/models/free_tool_check_post_response_networks_inner_errors_inner_spec.rb +1 -1
- data/spec/models/free_tool_check_post_response_networks_inner_spec.rb +1 -1
- data/spec/models/free_tool_check_post_response_spec.rb +1 -1
- data/spec/models/free_tool_clean_text_request_spec.rb +1 -1
- data/spec/models/free_tool_clean_text_response_changes_inner_spec.rb +1 -1
- data/spec/models/free_tool_clean_text_response_flags_inner_spec.rb +1 -1
- data/spec/models/free_tool_clean_text_response_spec.rb +1 -1
- data/spec/models/free_tool_count_characters_request_spec.rb +1 -1
- data/spec/models/free_tool_count_characters_response_networks_inner_spec.rb +1 -1
- data/spec/models/free_tool_count_characters_response_spec.rb +1 -1
- data/spec/models/free_tool_error_spec.rb +7 -1
- data/spec/models/free_tool_format_linked_in_post_request_spec.rb +1 -1
- data/spec/models/free_tool_format_linked_in_post_response_spec.rb +1 -1
- data/spec/models/free_tool_generate_caption_request_spec.rb +84 -0
- data/spec/models/free_tool_generate_caption_response_spec.rb +48 -0
- data/spec/models/free_tool_generate_fancy_text_request_spec.rb +1 -1
- data/spec/models/free_tool_generate_fancy_text_response_spec.rb +1 -1
- data/spec/models/free_tool_generate_fancy_text_response_styles_inner_spec.rb +1 -1
- data/spec/models/free_tool_generate_hashtags_request_spec.rb +58 -0
- data/spec/models/free_tool_generate_hashtags_response_spec.rb +48 -0
- data/spec/models/free_tool_list_item_spec.rb +1 -1
- data/spec/models/free_tool_list_spec.rb +1 -1
- data/spec/models/free_tool_split_thread_request_spec.rb +1 -1
- data/spec/models/free_tool_split_thread_response_posts_inner_spec.rb +1 -1
- data/spec/models/free_tool_split_thread_response_spec.rb +1 -1
- data/spec/models/get_account_health200_response_spec.rb +1 -1
- data/spec/models/get_brand_voice200_response_spec.rb +1 -1
- data/spec/models/get_competitor200_response_spec.rb +1 -1
- data/spec/models/get_inbox_conversation200_response_spec.rb +1 -1
- data/spec/models/get_posting_schedule200_response_spec.rb +1 -1
- data/spec/models/get_remote_upload_status200_response_spec.rb +1 -1
- data/spec/models/get_report_branding200_response_spec.rb +1 -1
- data/spec/models/get_repurpose_run200_response_spec.rb +1 -1
- data/spec/models/guardrail_error_spec.rb +1 -1
- data/spec/models/hashtag_group_input_spec.rb +1 -1
- data/spec/models/hashtag_group_spec.rb +1 -1
- data/spec/models/image_alt_text200_response_spec.rb +1 -1
- data/spec/models/image_alt_text_input_spec.rb +1 -1
- data/spec/models/image_alt_text_response_spec.rb +1 -1
- data/spec/models/image_credit_balance_spec.rb +1 -1
- data/spec/models/image_edit_input_spec.rb +1 -1
- data/spec/models/image_generate200_response_spec.rb +1 -1
- data/spec/models/image_generate429_response_spec.rb +1 -1
- data/spec/models/image_generate_input_spec.rb +1 -1
- data/spec/models/image_generation_response_spec.rb +1 -1
- data/spec/models/image_prompt200_response_spec.rb +1 -1
- data/spec/models/image_prompt429_response_spec.rb +1 -1
- data/spec/models/image_prompt_input_spec.rb +1 -1
- data/spec/models/image_prompt_response_spec.rb +1 -1
- data/spec/models/image_variations200_response_spec.rb +1 -1
- data/spec/models/image_variations_input_spec.rb +1 -1
- data/spec/models/image_variations_response_spec.rb +1 -1
- data/spec/models/inbox_author_spec.rb +1 -1
- data/spec/models/inbox_conversation_account_spec.rb +1 -1
- data/spec/models/inbox_conversation_spec.rb +1 -1
- data/spec/models/inbox_conversation_update_spec.rb +1 -1
- data/spec/models/inbox_message_author_spec.rb +1 -1
- data/spec/models/inbox_message_spec.rb +1 -1
- data/spec/models/inbox_reply_draft_approve_spec.rb +1 -1
- data/spec/models/inbox_reply_draft_edit_spec.rb +1 -1
- data/spec/models/inbox_reply_draft_input_spec.rb +1 -1
- data/spec/models/inbox_reply_draft_spec.rb +1 -1
- data/spec/models/initiate_chunked_upload201_response_spec.rb +1 -1
- data/spec/models/initiate_chunked_upload_request_spec.rb +1 -1
- data/spec/models/initiate_remote_upload201_response_one_of_spec.rb +1 -1
- data/spec/models/initiate_remote_upload201_response_spec.rb +1 -1
- data/spec/models/initiate_remote_upload_request_spec.rb +1 -1
- data/spec/models/learn_brand_voice_input_spec.rb +1 -1
- data/spec/models/learn_brand_voice_response_meta_spec.rb +1 -1
- data/spec/models/learn_brand_voice_response_spec.rb +1 -1
- data/spec/models/list_account_groups200_response_spec.rb +1 -1
- data/spec/models/list_accounts200_response_spec.rb +1 -1
- data/spec/models/list_agent_proposals200_response_spec.rb +1 -1
- data/spec/models/list_agent_runs200_response_spec.rb +1 -1
- data/spec/models/list_agents200_response_spec.rb +1 -1
- data/spec/models/list_api_activity200_response_spec.rb +1 -1
- data/spec/models/list_api_keys200_response_spec.rb +1 -1
- data/spec/models/list_competitors200_response_spec.rb +1 -1
- data/spec/models/list_hashtag_groups200_response_spec.rb +1 -1
- data/spec/models/list_inbox_conversations200_response_spec.rb +1 -1
- data/spec/models/list_inbox_reply_drafts200_response_spec.rb +1 -1
- data/spec/models/list_media200_response_spec.rb +1 -1
- data/spec/models/list_media_folders200_response_spec.rb +1 -1
- data/spec/models/list_mentions200_response_spec.rb +1 -1
- data/spec/models/list_my_workspaces200_response_spec.rb +1 -1
- data/spec/models/list_posts200_response_spec.rb +1 -1
- data/spec/models/list_receipts200_response_spec.rb +1 -1
- data/spec/models/list_recycling_rules200_response_spec.rb +1 -1
- data/spec/models/list_recycling_runs200_response_spec.rb +1 -1
- data/spec/models/list_report_exports200_response_spec.rb +1 -1
- data/spec/models/list_reseller_clients200_response_spec.rb +1 -1
- data/spec/models/list_rss_feeds200_response_spec.rb +1 -1
- data/spec/models/list_tags200_response_spec.rb +1 -1
- data/spec/models/list_templates200_response_spec.rb +1 -1
- data/spec/models/list_users200_response_spec.rb +1 -1
- data/spec/models/list_webhook_subscriptions200_response_spec.rb +1 -1
- data/spec/models/list_workspaces200_response_spec.rb +1 -1
- data/spec/models/media_base64_input_spec.rb +1 -1
- data/spec/models/media_folder_input_spec.rb +1 -1
- data/spec/models/media_folder_ref_spec.rb +1 -1
- data/spec/models/media_folder_spec.rb +1 -1
- data/spec/models/media_spec.rb +1 -1
- data/spec/models/mention_identity_input_spec.rb +1 -1
- data/spec/models/mention_identity_spec.rb +1 -1
- data/spec/models/mention_input_spec.rb +1 -1
- data/spec/models/mention_spec.rb +1 -1
- data/spec/models/message_only_spec.rb +1 -1
- data/spec/models/pagination_meta_links_spec.rb +1 -1
- data/spec/models/pagination_meta_meta_spec.rb +1 -1
- data/spec/models/pagination_meta_spec.rb +1 -1
- data/spec/models/poll_rss_feed200_response_spec.rb +1 -1
- data/spec/models/post_analytics_spec.rb +1 -1
- data/spec/models/post_content_spec.rb +1 -1
- data/spec/models/post_input_spec.rb +1 -1
- data/spec/models/post_options_instagram_spec.rb +1 -1
- data/spec/models/post_options_tik_tok_spec.rb +1 -1
- data/spec/models/post_options_youtube_spec.rb +1 -1
- data/spec/models/post_spec.rb +1 -1
- data/spec/models/post_status_spec.rb +1 -1
- data/spec/models/post_version_options_spec.rb +1 -1
- data/spec/models/post_version_spec.rb +1 -1
- data/spec/models/post_warning_spec.rb +2 -2
- data/spec/models/post_warnings_spec.rb +1 -1
- data/spec/models/posting_schedule_day_spec.rb +1 -1
- data/spec/models/posting_schedule_day_times_inner_spec.rb +1 -1
- data/spec/models/posting_schedule_input_spec.rb +1 -1
- data/spec/models/posting_schedule_spec.rb +1 -1
- data/spec/models/posting_time_slot_spec.rb +1 -1
- data/spec/models/posting_times_best_inner_spec.rb +1 -1
- data/spec/models/posting_times_day_intervals_inner_inner_spec.rb +1 -1
- data/spec/models/posting_times_days_inner_spec.rb +1 -1
- data/spec/models/posting_times_spec.rb +1 -1
- data/spec/models/preflight_result_spec.rb +1 -1
- data/spec/models/public_workspace_pivot_spec.rb +1 -1
- data/spec/models/public_workspace_spec.rb +1 -1
- data/spec/models/publish_progress_spec.rb +1 -1
- data/spec/models/queue_slots_spec.rb +1 -1
- data/spec/models/receipt_input_spec.rb +1 -1
- data/spec/models/receipt_spec.rb +1 -1
- data/spec/models/receipt_update_input_spec.rb +1 -1
- data/spec/models/recommended_posting_times_spec.rb +1 -1
- data/spec/models/reconnect_link_spec.rb +1 -1
- data/spec/models/recycling_rule_input_spec.rb +1 -1
- data/spec/models/recycling_rule_settings_spec.rb +1 -1
- data/spec/models/recycling_rule_spec.rb +1 -1
- data/spec/models/recycling_rule_update_spec.rb +1 -1
- data/spec/models/recycling_run_spec.rb +1 -1
- data/spec/models/remove_generic_subscription422_response_spec.rb +1 -1
- data/spec/models/remove_user_from_workspace_request_spec.rb +1 -1
- data/spec/models/report_branding_input_spec.rb +1 -1
- data/spec/models/report_branding_spec.rb +1 -1
- data/spec/models/report_export_input_spec.rb +1 -1
- data/spec/models/report_export_spec.rb +1 -1
- data/spec/models/repurpose_content200_response_spec.rb +1 -1
- data/spec/models/repurpose_content202_response_spec.rb +1 -1
- data/spec/models/repurpose_content500_response_spec.rb +1 -1
- data/spec/models/repurpose_input_spec.rb +1 -1
- data/spec/models/repurpose_input_theme_spec.rb +1 -1
- data/spec/models/repurpose_result_media_spec.rb +1 -1
- data/spec/models/repurpose_result_source_spec.rb +1 -1
- data/spec/models/repurpose_result_spec.rb +1 -1
- data/spec/models/repurpose_run_accepted_spec.rb +1 -1
- data/spec/models/repurpose_run_spec.rb +1 -1
- data/spec/models/repurpose_slide_spec.rb +1 -1
- data/spec/models/reseller_client_input_spec.rb +1 -1
- data/spec/models/reseller_client_spec.rb +1 -1
- data/spec/models/reseller_client_usage_spec.rb +1 -1
- data/spec/models/retry_post_account_result_spec.rb +1 -1
- data/spec/models/rss_feed_input_spec.rb +1 -1
- data/spec/models/rss_feed_spec.rb +1 -1
- data/spec/models/rss_feed_update_spec.rb +1 -1
- data/spec/models/run_agent202_response_spec.rb +1 -1
- data/spec/models/schedule_post_request_spec.rb +1 -1
- data/spec/models/schedule_result_spec.rb +1 -1
- data/spec/models/subscription_input_spec.rb +1 -1
- data/spec/models/subscription_spec.rb +1 -1
- data/spec/models/subscription_status_spec.rb +1 -1
- data/spec/models/subscription_update_input_spec.rb +1 -1
- data/spec/models/tag_input_spec.rb +1 -1
- data/spec/models/tag_spec.rb +1 -1
- data/spec/models/template_content_item_spec.rb +1 -1
- data/spec/models/template_input_content_inner_spec.rb +1 -1
- data/spec/models/template_input_spec.rb +1 -1
- data/spec/models/template_spec.rb +1 -1
- data/spec/models/update_media_request_spec.rb +1 -1
- data/spec/models/update_post200_response_spec.rb +1 -1
- data/spec/models/upload_chunk201_response_spec.rb +1 -1
- data/spec/models/user_input_spec.rb +1 -1
- data/spec/models/user_spec.rb +1 -1
- data/spec/models/user_update_input_spec.rb +1 -1
- data/spec/models/webhook_event_name_spec.rb +1 -1
- data/spec/models/webhook_event_payload_spec.rb +1 -1
- data/spec/models/webhook_subscription_input_spec.rb +1 -1
- data/spec/models/webhook_subscription_spec.rb +1 -1
- data/spec/models/workspace_agent_input_spec.rb +1 -1
- data/spec/models/workspace_agent_settings_spec.rb +1 -1
- data/spec/models/workspace_agent_spec.rb +1 -1
- data/spec/models/workspace_agent_update_spec.rb +1 -1
- data/spec/models/workspace_input_spec.rb +1 -1
- data/spec/models/workspace_spec.rb +1 -1
- data/spec/models/workspace_user_input_spec.rb +1 -1
- data/spec/models/x_usage_counter_spec.rb +1 -1
- data/spec/models/x_usage_spec.rb +1 -1
- data/spec/spec_helper.rb +1 -1
- metadata +17 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 47aa179e14cced9cad977f4fda28f243310e1a0c4153d7dd58f0f691f9f84c3b
|
|
4
|
+
data.tar.gz: b4157b7c9daa50957b46cc2904ecc79057a59e1ae05cbcaa73020b93830279be
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 291a340972d42d341ac8fa1a6f7dfc7eeb4df9c043f9a970fa13c41d064b570b662544812117c94a09183147105980346a012b4e6104ffee60fd340a162cf2d5
|
|
7
|
+
data.tar.gz: c85372021812c23666dfa87abdb91bdc5b174bea8435fb2a7bcca483756efbfef93e1062b3644e317899648bb07cadbaec4986be996e0be8c2f26821f84dab8f
|
data/README.md
CHANGED
|
@@ -13,7 +13,7 @@ gem install postboost
|
|
|
13
13
|
| **RubyGems** | [rubygems.org/gems/postboost](https://rubygems.org/gems/postboost) |
|
|
14
14
|
| **GitHub** | [postboost-co/postboost-ruby](https://github.com/postboost-co/postboost-ruby) |
|
|
15
15
|
| **Docs** | [postboost.co/docs/api](https://postboost.co/docs/api) |
|
|
16
|
-
| **Version** | v1.
|
|
16
|
+
| **Version** | v1.29.0 |
|
|
17
17
|
|
|
18
18
|
## Quick start
|
|
19
19
|
|
|
@@ -92,7 +92,9 @@ Class | Method | HTTP request | Description
|
|
|
92
92
|
*PostBoost::FreeToolsApi* | [**clean_text**](docs/FreeToolsApi.md#clean_text) | **POST** /tools/ai-text-cleaner | Clean AI-written text: dashes, quotes, invisible characters, markdown
|
|
93
93
|
*PostBoost::FreeToolsApi* | [**count_characters**](docs/FreeToolsApi.md#count_characters) | **POST** /tools/social-media-character-counter | Count characters as each network counts them
|
|
94
94
|
*PostBoost::FreeToolsApi* | [**format_linked_in_post**](docs/FreeToolsApi.md#format_linked_in_post) | **POST** /tools/linkedin-post-formatter | Format a LinkedIn post with bold, italic and lists
|
|
95
|
+
*PostBoost::FreeToolsApi* | [**generate_caption**](docs/FreeToolsApi.md#generate_caption) | **POST** /tools/instagram-caption-generator | Write three post captions for a topic with AI (needs a token, spends AI credits)
|
|
95
96
|
*PostBoost::FreeToolsApi* | [**generate_fancy_text**](docs/FreeToolsApi.md#generate_fancy_text) | **POST** /tools/fancy-text-generator | Convert text to fancy Unicode styles
|
|
97
|
+
*PostBoost::FreeToolsApi* | [**generate_hashtags**](docs/FreeToolsApi.md#generate_hashtags) | **POST** /tools/instagram-hashtag-generator | Generate hashtags for a post topic with AI (needs a token, spends AI credits)
|
|
96
98
|
*PostBoost::FreeToolsApi* | [**list_free_tools**](docs/FreeToolsApi.md#list_free_tools) | **GET** /tools | List the free tools
|
|
97
99
|
*PostBoost::FreeToolsApi* | [**split_thread**](docs/FreeToolsApi.md#split_thread) | **POST** /tools/x-thread-maker | Split long text into a thread
|
|
98
100
|
*PostBoost::HashtagGroupsApi* | [**create_hashtag_group**](docs/HashtagGroupsApi.md#create_hashtag_group) | **POST** /{workspaceUuid}/hashtag-groups | Create a hashtag group
|
data/docs/FreeToolError.md
CHANGED
|
@@ -6,8 +6,9 @@
|
|
|
6
6
|
| ---- | ---- | ----------- | ----- |
|
|
7
7
|
| **message** | **String** | | |
|
|
8
8
|
| **retry_after** | **Integer** | 429 only: seconds until the limit resets. | [optional] |
|
|
9
|
-
| **
|
|
10
|
-
| **
|
|
9
|
+
| **code** | **String** | 429 of a paid AI tool: `ai_credits_exhausted`. | [optional] |
|
|
10
|
+
| **register_url** | **String** | 429 for guests: sign up for a token with higher limits. 401 of a paid AI tool: sign up for a token. | [optional] |
|
|
11
|
+
| **upgrade_url** | **String** | 429 when a token user reached the plan's daily cap, or a paid AI tool's workspace has no AI credits left. | [optional] |
|
|
11
12
|
|
|
12
13
|
## Example
|
|
13
14
|
|
|
@@ -17,6 +18,7 @@ require 'postboost'
|
|
|
17
18
|
instance = PostBoost::FreeToolError.new(
|
|
18
19
|
message: null,
|
|
19
20
|
retry_after: null,
|
|
21
|
+
code: null,
|
|
20
22
|
register_url: null,
|
|
21
23
|
upgrade_url: null
|
|
22
24
|
)
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# PostBoost::FreeToolGenerateCaptionRequest
|
|
2
|
+
|
|
3
|
+
## Properties
|
|
4
|
+
|
|
5
|
+
| Name | Type | Description | Notes |
|
|
6
|
+
| ---- | ---- | ----------- | ----- |
|
|
7
|
+
| **text** | **String** | What the post is about. | |
|
|
8
|
+
| **tone** | **String** | | [optional][default to 'friendly'] |
|
|
9
|
+
| **length** | **String** | short: 10-20 words, medium: 25-40, long: 45-60. | [optional][default to 'medium'] |
|
|
10
|
+
| **emoji** | **Boolean** | Use a few fitting emoji. | [optional][default to true] |
|
|
11
|
+
| **hashtags** | **Boolean** | End each caption with 3-5 relevant hashtags. | [optional][default to false] |
|
|
12
|
+
| **network** | **String** | The network the text is written for. | [optional][default to 'instagram'] |
|
|
13
|
+
| **workspace** | **String** | UUID of the workspace whose AI credits pay for the call. Default: your active workspace (a scoped API key: its own workspace). | [optional] |
|
|
14
|
+
|
|
15
|
+
## Example
|
|
16
|
+
|
|
17
|
+
```ruby
|
|
18
|
+
require 'postboost'
|
|
19
|
+
|
|
20
|
+
instance = PostBoost::FreeToolGenerateCaptionRequest.new(
|
|
21
|
+
text: null,
|
|
22
|
+
tone: null,
|
|
23
|
+
length: null,
|
|
24
|
+
emoji: null,
|
|
25
|
+
hashtags: null,
|
|
26
|
+
network: null,
|
|
27
|
+
workspace: null
|
|
28
|
+
)
|
|
29
|
+
```
|
|
30
|
+
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# PostBoost::FreeToolGenerateCaptionResponse
|
|
2
|
+
|
|
3
|
+
## Properties
|
|
4
|
+
|
|
5
|
+
| Name | Type | Description | Notes |
|
|
6
|
+
| ---- | ---- | ----------- | ----- |
|
|
7
|
+
| **captions** | **Array<String>** | Three different captions. | [optional] |
|
|
8
|
+
| **credits_spent** | **Integer** | AI credits this call took from the workspace: 1, or 0 for a cached result. | [optional] |
|
|
9
|
+
| **cached** | **Boolean** | True when the same request was answered before (free). | [optional] |
|
|
10
|
+
|
|
11
|
+
## Example
|
|
12
|
+
|
|
13
|
+
```ruby
|
|
14
|
+
require 'postboost'
|
|
15
|
+
|
|
16
|
+
instance = PostBoost::FreeToolGenerateCaptionResponse.new(
|
|
17
|
+
captions: null,
|
|
18
|
+
credits_spent: null,
|
|
19
|
+
cached: null
|
|
20
|
+
)
|
|
21
|
+
```
|
|
22
|
+
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# PostBoost::FreeToolGenerateHashtagsRequest
|
|
2
|
+
|
|
3
|
+
## Properties
|
|
4
|
+
|
|
5
|
+
| Name | Type | Description | Notes |
|
|
6
|
+
| ---- | ---- | ----------- | ----- |
|
|
7
|
+
| **topic** | **String** | What the post is about. | |
|
|
8
|
+
| **niche** | **String** | Optional niche, e.g. \"fitness\" or \"real estate\". | [optional] |
|
|
9
|
+
| **network** | **String** | The network the text is written for. | [optional][default to 'instagram'] |
|
|
10
|
+
| **workspace** | **String** | UUID of the workspace whose AI credits pay for the call. Default: your active workspace (a scoped API key: its own workspace). | [optional] |
|
|
11
|
+
|
|
12
|
+
## Example
|
|
13
|
+
|
|
14
|
+
```ruby
|
|
15
|
+
require 'postboost'
|
|
16
|
+
|
|
17
|
+
instance = PostBoost::FreeToolGenerateHashtagsRequest.new(
|
|
18
|
+
topic: null,
|
|
19
|
+
niche: null,
|
|
20
|
+
network: null,
|
|
21
|
+
workspace: null
|
|
22
|
+
)
|
|
23
|
+
```
|
|
24
|
+
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# PostBoost::FreeToolGenerateHashtagsResponse
|
|
2
|
+
|
|
3
|
+
## Properties
|
|
4
|
+
|
|
5
|
+
| Name | Type | Description | Notes |
|
|
6
|
+
| ---- | ---- | ----------- | ----- |
|
|
7
|
+
| **hashtags** | **Array<String>** | 5 to 10 hashtags, best first. | [optional] |
|
|
8
|
+
| **credits_spent** | **Integer** | AI credits this call took from the workspace: 1, or 0 for a cached result. | [optional] |
|
|
9
|
+
| **cached** | **Boolean** | True when the same request was answered before (free). | [optional] |
|
|
10
|
+
|
|
11
|
+
## Example
|
|
12
|
+
|
|
13
|
+
```ruby
|
|
14
|
+
require 'postboost'
|
|
15
|
+
|
|
16
|
+
instance = PostBoost::FreeToolGenerateHashtagsResponse.new(
|
|
17
|
+
hashtags: null,
|
|
18
|
+
credits_spent: null,
|
|
19
|
+
cached: null
|
|
20
|
+
)
|
|
21
|
+
```
|
|
22
|
+
|
data/docs/FreeToolsApi.md
CHANGED
|
@@ -10,7 +10,9 @@ All URIs are relative to *https://postboost.co/app/api*
|
|
|
10
10
|
| [**clean_text**](FreeToolsApi.md#clean_text) | **POST** /tools/ai-text-cleaner | Clean AI-written text: dashes, quotes, invisible characters, markdown |
|
|
11
11
|
| [**count_characters**](FreeToolsApi.md#count_characters) | **POST** /tools/social-media-character-counter | Count characters as each network counts them |
|
|
12
12
|
| [**format_linked_in_post**](FreeToolsApi.md#format_linked_in_post) | **POST** /tools/linkedin-post-formatter | Format a LinkedIn post with bold, italic and lists |
|
|
13
|
+
| [**generate_caption**](FreeToolsApi.md#generate_caption) | **POST** /tools/instagram-caption-generator | Write three post captions for a topic with AI (needs a token, spends AI credits) |
|
|
13
14
|
| [**generate_fancy_text**](FreeToolsApi.md#generate_fancy_text) | **POST** /tools/fancy-text-generator | Convert text to fancy Unicode styles |
|
|
15
|
+
| [**generate_hashtags**](FreeToolsApi.md#generate_hashtags) | **POST** /tools/instagram-hashtag-generator | Generate hashtags for a post topic with AI (needs a token, spends AI credits) |
|
|
14
16
|
| [**list_free_tools**](FreeToolsApi.md#list_free_tools) | **GET** /tools | List the free tools |
|
|
15
17
|
| [**split_thread**](FreeToolsApi.md#split_thread) | **POST** /tools/x-thread-maker | Split long text into a thread |
|
|
16
18
|
|
|
@@ -399,6 +401,75 @@ No authorization required
|
|
|
399
401
|
- **Accept**: application/json
|
|
400
402
|
|
|
401
403
|
|
|
404
|
+
## generate_caption
|
|
405
|
+
|
|
406
|
+
> <FreeToolGenerateCaptionResponse> generate_caption(free_tool_generate_caption_request)
|
|
407
|
+
|
|
408
|
+
Write three post captions for a topic with AI (needs a token, spends AI credits)
|
|
409
|
+
|
|
410
|
+
Write three post captions for a topic with AI (needs a token, spends AI credits). The same logic as the free web tool at https://postboost.co/tools/instagram-caption-generator. Needs an API token (a scoped key needs the `ai` ability and pays with its own workspace). A new generation spends 1 AI credit of the workspace you name (or your active workspace); a repeated identical request is answered from the cache for free.
|
|
411
|
+
|
|
412
|
+
### Examples
|
|
413
|
+
|
|
414
|
+
```ruby
|
|
415
|
+
require 'time'
|
|
416
|
+
require 'postboost'
|
|
417
|
+
# setup authorization
|
|
418
|
+
PostBoost.configure do |config|
|
|
419
|
+
# Configure Bearer authorization: bearerAuth
|
|
420
|
+
config.access_token = 'YOUR_BEARER_TOKEN'
|
|
421
|
+
end
|
|
422
|
+
|
|
423
|
+
api_instance = PostBoost::FreeToolsApi.new
|
|
424
|
+
free_tool_generate_caption_request = PostBoost::FreeToolGenerateCaptionRequest.new({text: 'text_example'}) # FreeToolGenerateCaptionRequest |
|
|
425
|
+
|
|
426
|
+
begin
|
|
427
|
+
# Write three post captions for a topic with AI (needs a token, spends AI credits)
|
|
428
|
+
result = api_instance.generate_caption(free_tool_generate_caption_request)
|
|
429
|
+
p result
|
|
430
|
+
rescue PostBoost::ApiError => e
|
|
431
|
+
puts "Error when calling FreeToolsApi->generate_caption: #{e}"
|
|
432
|
+
end
|
|
433
|
+
```
|
|
434
|
+
|
|
435
|
+
#### Using the generate_caption_with_http_info variant
|
|
436
|
+
|
|
437
|
+
This returns an Array which contains the response data, status code and headers.
|
|
438
|
+
|
|
439
|
+
> <Array(<FreeToolGenerateCaptionResponse>, Integer, Hash)> generate_caption_with_http_info(free_tool_generate_caption_request)
|
|
440
|
+
|
|
441
|
+
```ruby
|
|
442
|
+
begin
|
|
443
|
+
# Write three post captions for a topic with AI (needs a token, spends AI credits)
|
|
444
|
+
data, status_code, headers = api_instance.generate_caption_with_http_info(free_tool_generate_caption_request)
|
|
445
|
+
p status_code # => 2xx
|
|
446
|
+
p headers # => { ... }
|
|
447
|
+
p data # => <FreeToolGenerateCaptionResponse>
|
|
448
|
+
rescue PostBoost::ApiError => e
|
|
449
|
+
puts "Error when calling FreeToolsApi->generate_caption_with_http_info: #{e}"
|
|
450
|
+
end
|
|
451
|
+
```
|
|
452
|
+
|
|
453
|
+
### Parameters
|
|
454
|
+
|
|
455
|
+
| Name | Type | Description | Notes |
|
|
456
|
+
| ---- | ---- | ----------- | ----- |
|
|
457
|
+
| **free_tool_generate_caption_request** | [**FreeToolGenerateCaptionRequest**](FreeToolGenerateCaptionRequest.md) | | |
|
|
458
|
+
|
|
459
|
+
### Return type
|
|
460
|
+
|
|
461
|
+
[**FreeToolGenerateCaptionResponse**](FreeToolGenerateCaptionResponse.md)
|
|
462
|
+
|
|
463
|
+
### Authorization
|
|
464
|
+
|
|
465
|
+
[bearerAuth](../README.md#bearerAuth)
|
|
466
|
+
|
|
467
|
+
### HTTP request headers
|
|
468
|
+
|
|
469
|
+
- **Content-Type**: application/json
|
|
470
|
+
- **Accept**: application/json
|
|
471
|
+
|
|
472
|
+
|
|
402
473
|
## generate_fancy_text
|
|
403
474
|
|
|
404
475
|
> <FreeToolGenerateFancyTextResponse> generate_fancy_text(free_tool_generate_fancy_text_request)
|
|
@@ -463,6 +534,75 @@ No authorization required
|
|
|
463
534
|
- **Accept**: application/json
|
|
464
535
|
|
|
465
536
|
|
|
537
|
+
## generate_hashtags
|
|
538
|
+
|
|
539
|
+
> <FreeToolGenerateHashtagsResponse> generate_hashtags(free_tool_generate_hashtags_request)
|
|
540
|
+
|
|
541
|
+
Generate hashtags for a post topic with AI (needs a token, spends AI credits)
|
|
542
|
+
|
|
543
|
+
Generate hashtags for a post topic with AI (needs a token, spends AI credits). The same logic as the free web tool at https://postboost.co/tools/instagram-hashtag-generator. Needs an API token (a scoped key needs the `ai` ability and pays with its own workspace). A new generation spends 1 AI credit of the workspace you name (or your active workspace); a repeated identical request is answered from the cache for free.
|
|
544
|
+
|
|
545
|
+
### Examples
|
|
546
|
+
|
|
547
|
+
```ruby
|
|
548
|
+
require 'time'
|
|
549
|
+
require 'postboost'
|
|
550
|
+
# setup authorization
|
|
551
|
+
PostBoost.configure do |config|
|
|
552
|
+
# Configure Bearer authorization: bearerAuth
|
|
553
|
+
config.access_token = 'YOUR_BEARER_TOKEN'
|
|
554
|
+
end
|
|
555
|
+
|
|
556
|
+
api_instance = PostBoost::FreeToolsApi.new
|
|
557
|
+
free_tool_generate_hashtags_request = PostBoost::FreeToolGenerateHashtagsRequest.new({topic: 'topic_example'}) # FreeToolGenerateHashtagsRequest |
|
|
558
|
+
|
|
559
|
+
begin
|
|
560
|
+
# Generate hashtags for a post topic with AI (needs a token, spends AI credits)
|
|
561
|
+
result = api_instance.generate_hashtags(free_tool_generate_hashtags_request)
|
|
562
|
+
p result
|
|
563
|
+
rescue PostBoost::ApiError => e
|
|
564
|
+
puts "Error when calling FreeToolsApi->generate_hashtags: #{e}"
|
|
565
|
+
end
|
|
566
|
+
```
|
|
567
|
+
|
|
568
|
+
#### Using the generate_hashtags_with_http_info variant
|
|
569
|
+
|
|
570
|
+
This returns an Array which contains the response data, status code and headers.
|
|
571
|
+
|
|
572
|
+
> <Array(<FreeToolGenerateHashtagsResponse>, Integer, Hash)> generate_hashtags_with_http_info(free_tool_generate_hashtags_request)
|
|
573
|
+
|
|
574
|
+
```ruby
|
|
575
|
+
begin
|
|
576
|
+
# Generate hashtags for a post topic with AI (needs a token, spends AI credits)
|
|
577
|
+
data, status_code, headers = api_instance.generate_hashtags_with_http_info(free_tool_generate_hashtags_request)
|
|
578
|
+
p status_code # => 2xx
|
|
579
|
+
p headers # => { ... }
|
|
580
|
+
p data # => <FreeToolGenerateHashtagsResponse>
|
|
581
|
+
rescue PostBoost::ApiError => e
|
|
582
|
+
puts "Error when calling FreeToolsApi->generate_hashtags_with_http_info: #{e}"
|
|
583
|
+
end
|
|
584
|
+
```
|
|
585
|
+
|
|
586
|
+
### Parameters
|
|
587
|
+
|
|
588
|
+
| Name | Type | Description | Notes |
|
|
589
|
+
| ---- | ---- | ----------- | ----- |
|
|
590
|
+
| **free_tool_generate_hashtags_request** | [**FreeToolGenerateHashtagsRequest**](FreeToolGenerateHashtagsRequest.md) | | |
|
|
591
|
+
|
|
592
|
+
### Return type
|
|
593
|
+
|
|
594
|
+
[**FreeToolGenerateHashtagsResponse**](FreeToolGenerateHashtagsResponse.md)
|
|
595
|
+
|
|
596
|
+
### Authorization
|
|
597
|
+
|
|
598
|
+
[bearerAuth](../README.md#bearerAuth)
|
|
599
|
+
|
|
600
|
+
### HTTP request headers
|
|
601
|
+
|
|
602
|
+
- **Content-Type**: application/json
|
|
603
|
+
- **Accept**: application/json
|
|
604
|
+
|
|
605
|
+
|
|
466
606
|
## list_free_tools
|
|
467
607
|
|
|
468
608
|
> <FreeToolList> list_free_tools
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
#The PostBoost REST API lets you publish, schedule, and analyze social media posts on every supported network from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace's plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request's `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account's daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
|
|
5
5
|
|
|
6
|
-
The version of the OpenAPI document: 1.
|
|
6
|
+
The version of the OpenAPI document: 1.29.0
|
|
7
7
|
Contact: hi@postboost.co
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
|
9
9
|
Generator version: 7.9.0
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
#The PostBoost REST API lets you publish, schedule, and analyze social media posts on every supported network from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace's plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request's `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account's daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
|
|
5
5
|
|
|
6
|
-
The version of the OpenAPI document: 1.
|
|
6
|
+
The version of the OpenAPI document: 1.29.0
|
|
7
7
|
Contact: hi@postboost.co
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
|
9
9
|
Generator version: 7.9.0
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
#The PostBoost REST API lets you publish, schedule, and analyze social media posts on every supported network from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace's plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request's `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account's daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
|
|
5
5
|
|
|
6
|
-
The version of the OpenAPI document: 1.
|
|
6
|
+
The version of the OpenAPI document: 1.29.0
|
|
7
7
|
Contact: hi@postboost.co
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
|
9
9
|
Generator version: 7.9.0
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
#The PostBoost REST API lets you publish, schedule, and analyze social media posts on every supported network from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace's plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request's `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account's daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
|
|
5
5
|
|
|
6
|
-
The version of the OpenAPI document: 1.
|
|
6
|
+
The version of the OpenAPI document: 1.29.0
|
|
7
7
|
Contact: hi@postboost.co
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
|
9
9
|
Generator version: 7.9.0
|
data/lib/postboost/api/ai_api.rb
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
#The PostBoost REST API lets you publish, schedule, and analyze social media posts on every supported network from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace's plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request's `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account's daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
|
|
5
5
|
|
|
6
|
-
The version of the OpenAPI document: 1.
|
|
6
|
+
The version of the OpenAPI document: 1.29.0
|
|
7
7
|
Contact: hi@postboost.co
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
|
9
9
|
Generator version: 7.9.0
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
#The PostBoost REST API lets you publish, schedule, and analyze social media posts on every supported network from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace's plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request's `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account's daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
|
|
5
5
|
|
|
6
|
-
The version of the OpenAPI document: 1.
|
|
6
|
+
The version of the OpenAPI document: 1.29.0
|
|
7
7
|
Contact: hi@postboost.co
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
|
9
9
|
Generator version: 7.9.0
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
#The PostBoost REST API lets you publish, schedule, and analyze social media posts on every supported network from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace's plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request's `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account's daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
|
|
5
5
|
|
|
6
|
-
The version of the OpenAPI document: 1.
|
|
6
|
+
The version of the OpenAPI document: 1.29.0
|
|
7
7
|
Contact: hi@postboost.co
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
|
9
9
|
Generator version: 7.9.0
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
#The PostBoost REST API lets you publish, schedule, and analyze social media posts on every supported network from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace's plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request's `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account's daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
|
|
5
5
|
|
|
6
|
-
The version of the OpenAPI document: 1.
|
|
6
|
+
The version of the OpenAPI document: 1.29.0
|
|
7
7
|
Contact: hi@postboost.co
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
|
9
9
|
Generator version: 7.9.0
|
|
@@ -427,6 +427,74 @@ module PostBoost
|
|
|
427
427
|
return data, status_code, headers
|
|
428
428
|
end
|
|
429
429
|
|
|
430
|
+
# Write three post captions for a topic with AI (needs a token, spends AI credits)
|
|
431
|
+
# Write three post captions for a topic with AI (needs a token, spends AI credits). The same logic as the free web tool at https://postboost.co/tools/instagram-caption-generator. Needs an API token (a scoped key needs the `ai` ability and pays with its own workspace). A new generation spends 1 AI credit of the workspace you name (or your active workspace); a repeated identical request is answered from the cache for free.
|
|
432
|
+
# @param free_tool_generate_caption_request [FreeToolGenerateCaptionRequest]
|
|
433
|
+
# @param [Hash] opts the optional parameters
|
|
434
|
+
# @return [FreeToolGenerateCaptionResponse]
|
|
435
|
+
def generate_caption(free_tool_generate_caption_request, opts = {})
|
|
436
|
+
data, _status_code, _headers = generate_caption_with_http_info(free_tool_generate_caption_request, opts)
|
|
437
|
+
data
|
|
438
|
+
end
|
|
439
|
+
|
|
440
|
+
# Write three post captions for a topic with AI (needs a token, spends AI credits)
|
|
441
|
+
# Write three post captions for a topic with AI (needs a token, spends AI credits). The same logic as the free web tool at https://postboost.co/tools/instagram-caption-generator. Needs an API token (a scoped key needs the `ai` ability and pays with its own workspace). A new generation spends 1 AI credit of the workspace you name (or your active workspace); a repeated identical request is answered from the cache for free.
|
|
442
|
+
# @param free_tool_generate_caption_request [FreeToolGenerateCaptionRequest]
|
|
443
|
+
# @param [Hash] opts the optional parameters
|
|
444
|
+
# @return [Array<(FreeToolGenerateCaptionResponse, Integer, Hash)>] FreeToolGenerateCaptionResponse data, response status code and response headers
|
|
445
|
+
def generate_caption_with_http_info(free_tool_generate_caption_request, opts = {})
|
|
446
|
+
if @api_client.config.debugging
|
|
447
|
+
@api_client.config.logger.debug 'Calling API: FreeToolsApi.generate_caption ...'
|
|
448
|
+
end
|
|
449
|
+
# verify the required parameter 'free_tool_generate_caption_request' is set
|
|
450
|
+
if @api_client.config.client_side_validation && free_tool_generate_caption_request.nil?
|
|
451
|
+
fail ArgumentError, "Missing the required parameter 'free_tool_generate_caption_request' when calling FreeToolsApi.generate_caption"
|
|
452
|
+
end
|
|
453
|
+
# resource path
|
|
454
|
+
local_var_path = '/tools/instagram-caption-generator'
|
|
455
|
+
|
|
456
|
+
# query parameters
|
|
457
|
+
query_params = opts[:query_params] || {}
|
|
458
|
+
|
|
459
|
+
# header parameters
|
|
460
|
+
header_params = opts[:header_params] || {}
|
|
461
|
+
# HTTP header 'Accept' (if needed)
|
|
462
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
463
|
+
# HTTP header 'Content-Type'
|
|
464
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
|
465
|
+
if !content_type.nil?
|
|
466
|
+
header_params['Content-Type'] = content_type
|
|
467
|
+
end
|
|
468
|
+
|
|
469
|
+
# form parameters
|
|
470
|
+
form_params = opts[:form_params] || {}
|
|
471
|
+
|
|
472
|
+
# http body (model)
|
|
473
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(free_tool_generate_caption_request)
|
|
474
|
+
|
|
475
|
+
# return_type
|
|
476
|
+
return_type = opts[:debug_return_type] || 'FreeToolGenerateCaptionResponse'
|
|
477
|
+
|
|
478
|
+
# auth_names
|
|
479
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
480
|
+
|
|
481
|
+
new_options = opts.merge(
|
|
482
|
+
:operation => :"FreeToolsApi.generate_caption",
|
|
483
|
+
:header_params => header_params,
|
|
484
|
+
:query_params => query_params,
|
|
485
|
+
:form_params => form_params,
|
|
486
|
+
:body => post_body,
|
|
487
|
+
:auth_names => auth_names,
|
|
488
|
+
:return_type => return_type
|
|
489
|
+
)
|
|
490
|
+
|
|
491
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
492
|
+
if @api_client.config.debugging
|
|
493
|
+
@api_client.config.logger.debug "API called: FreeToolsApi#generate_caption\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
494
|
+
end
|
|
495
|
+
return data, status_code, headers
|
|
496
|
+
end
|
|
497
|
+
|
|
430
498
|
# Convert text to fancy Unicode styles
|
|
431
499
|
# Convert text to fancy Unicode styles. The same logic as the free web tool at https://postboost.co/tools/fancy-text-generator. No account needed: call it without a token, or with any API token.
|
|
432
500
|
# @param free_tool_generate_fancy_text_request [FreeToolGenerateFancyTextRequest]
|
|
@@ -495,6 +563,74 @@ module PostBoost
|
|
|
495
563
|
return data, status_code, headers
|
|
496
564
|
end
|
|
497
565
|
|
|
566
|
+
# Generate hashtags for a post topic with AI (needs a token, spends AI credits)
|
|
567
|
+
# Generate hashtags for a post topic with AI (needs a token, spends AI credits). The same logic as the free web tool at https://postboost.co/tools/instagram-hashtag-generator. Needs an API token (a scoped key needs the `ai` ability and pays with its own workspace). A new generation spends 1 AI credit of the workspace you name (or your active workspace); a repeated identical request is answered from the cache for free.
|
|
568
|
+
# @param free_tool_generate_hashtags_request [FreeToolGenerateHashtagsRequest]
|
|
569
|
+
# @param [Hash] opts the optional parameters
|
|
570
|
+
# @return [FreeToolGenerateHashtagsResponse]
|
|
571
|
+
def generate_hashtags(free_tool_generate_hashtags_request, opts = {})
|
|
572
|
+
data, _status_code, _headers = generate_hashtags_with_http_info(free_tool_generate_hashtags_request, opts)
|
|
573
|
+
data
|
|
574
|
+
end
|
|
575
|
+
|
|
576
|
+
# Generate hashtags for a post topic with AI (needs a token, spends AI credits)
|
|
577
|
+
# Generate hashtags for a post topic with AI (needs a token, spends AI credits). The same logic as the free web tool at https://postboost.co/tools/instagram-hashtag-generator. Needs an API token (a scoped key needs the `ai` ability and pays with its own workspace). A new generation spends 1 AI credit of the workspace you name (or your active workspace); a repeated identical request is answered from the cache for free.
|
|
578
|
+
# @param free_tool_generate_hashtags_request [FreeToolGenerateHashtagsRequest]
|
|
579
|
+
# @param [Hash] opts the optional parameters
|
|
580
|
+
# @return [Array<(FreeToolGenerateHashtagsResponse, Integer, Hash)>] FreeToolGenerateHashtagsResponse data, response status code and response headers
|
|
581
|
+
def generate_hashtags_with_http_info(free_tool_generate_hashtags_request, opts = {})
|
|
582
|
+
if @api_client.config.debugging
|
|
583
|
+
@api_client.config.logger.debug 'Calling API: FreeToolsApi.generate_hashtags ...'
|
|
584
|
+
end
|
|
585
|
+
# verify the required parameter 'free_tool_generate_hashtags_request' is set
|
|
586
|
+
if @api_client.config.client_side_validation && free_tool_generate_hashtags_request.nil?
|
|
587
|
+
fail ArgumentError, "Missing the required parameter 'free_tool_generate_hashtags_request' when calling FreeToolsApi.generate_hashtags"
|
|
588
|
+
end
|
|
589
|
+
# resource path
|
|
590
|
+
local_var_path = '/tools/instagram-hashtag-generator'
|
|
591
|
+
|
|
592
|
+
# query parameters
|
|
593
|
+
query_params = opts[:query_params] || {}
|
|
594
|
+
|
|
595
|
+
# header parameters
|
|
596
|
+
header_params = opts[:header_params] || {}
|
|
597
|
+
# HTTP header 'Accept' (if needed)
|
|
598
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
599
|
+
# HTTP header 'Content-Type'
|
|
600
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
|
601
|
+
if !content_type.nil?
|
|
602
|
+
header_params['Content-Type'] = content_type
|
|
603
|
+
end
|
|
604
|
+
|
|
605
|
+
# form parameters
|
|
606
|
+
form_params = opts[:form_params] || {}
|
|
607
|
+
|
|
608
|
+
# http body (model)
|
|
609
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(free_tool_generate_hashtags_request)
|
|
610
|
+
|
|
611
|
+
# return_type
|
|
612
|
+
return_type = opts[:debug_return_type] || 'FreeToolGenerateHashtagsResponse'
|
|
613
|
+
|
|
614
|
+
# auth_names
|
|
615
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
616
|
+
|
|
617
|
+
new_options = opts.merge(
|
|
618
|
+
:operation => :"FreeToolsApi.generate_hashtags",
|
|
619
|
+
:header_params => header_params,
|
|
620
|
+
:query_params => query_params,
|
|
621
|
+
:form_params => form_params,
|
|
622
|
+
:body => post_body,
|
|
623
|
+
:auth_names => auth_names,
|
|
624
|
+
:return_type => return_type
|
|
625
|
+
)
|
|
626
|
+
|
|
627
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
628
|
+
if @api_client.config.debugging
|
|
629
|
+
@api_client.config.logger.debug "API called: FreeToolsApi#generate_hashtags\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
630
|
+
end
|
|
631
|
+
return data, status_code, headers
|
|
632
|
+
end
|
|
633
|
+
|
|
498
634
|
# List the free tools
|
|
499
635
|
# Every free tool the API serves, with its operationId and web page. No token needed.
|
|
500
636
|
# @param [Hash] opts the optional parameters
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
#The PostBoost REST API lets you publish, schedule, and analyze social media posts on every supported network from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace's plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request's `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account's daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
|
|
5
5
|
|
|
6
|
-
The version of the OpenAPI document: 1.
|
|
6
|
+
The version of the OpenAPI document: 1.29.0
|
|
7
7
|
Contact: hi@postboost.co
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
|
9
9
|
Generator version: 7.9.0
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
#The PostBoost REST API lets you publish, schedule, and analyze social media posts on every supported network from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace's plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request's `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account's daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
|
|
5
5
|
|
|
6
|
-
The version of the OpenAPI document: 1.
|
|
6
|
+
The version of the OpenAPI document: 1.29.0
|
|
7
7
|
Contact: hi@postboost.co
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
|
9
9
|
Generator version: 7.9.0
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
#The PostBoost REST API lets you publish, schedule, and analyze social media posts on every supported network from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace's plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request's `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account's daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
|
|
5
5
|
|
|
6
|
-
The version of the OpenAPI document: 1.
|
|
6
|
+
The version of the OpenAPI document: 1.29.0
|
|
7
7
|
Contact: hi@postboost.co
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
|
9
9
|
Generator version: 7.9.0
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
#The PostBoost REST API lets you publish, schedule, and analyze social media posts on every supported network from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace's plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request's `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account's daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
|
|
5
5
|
|
|
6
|
-
The version of the OpenAPI document: 1.
|
|
6
|
+
The version of the OpenAPI document: 1.29.0
|
|
7
7
|
Contact: hi@postboost.co
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
|
9
9
|
Generator version: 7.9.0
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
#The PostBoost REST API lets you publish, schedule, and analyze social media posts on every supported network from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace's plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request's `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account's daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
|
|
5
5
|
|
|
6
|
-
The version of the OpenAPI document: 1.
|
|
6
|
+
The version of the OpenAPI document: 1.29.0
|
|
7
7
|
Contact: hi@postboost.co
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
|
9
9
|
Generator version: 7.9.0
|