postboost 1.8.0 → 1.14.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/CODE_OF_CONDUCT.md +7 -0
- data/CONTRIBUTING.md +31 -0
- data/README.md +134 -1
- data/SECURITY.md +9 -0
- data/docs/AIApi.md +432 -0
- data/docs/AIUsage.md +20 -0
- data/docs/AIUsageText.md +24 -0
- data/docs/Account.md +6 -2
- data/docs/AccountConnectionHealth.md +34 -0
- data/docs/AccountErrorsInner.md +49 -0
- data/docs/AccountErrorsInnerOneOf.md +24 -0
- data/docs/AccountGroup.md +24 -0
- data/docs/AccountGroupInput.md +20 -0
- data/docs/AccountGroupsApi.md +372 -0
- data/docs/AccountHealth.md +34 -0
- data/docs/AccountHealthDailyCap.md +20 -0
- data/docs/AccountsApi.md +216 -0
- data/docs/ActivityApi.md +87 -0
- data/docs/AddCompetitor202Response.md +20 -0
- data/docs/AddCompetitor409Response.md +20 -0
- data/docs/AgentPageMeta.md +24 -0
- data/docs/AgentProposal.md +44 -0
- data/docs/AgentProposalDecision.md +18 -0
- data/docs/AgentRun.md +44 -0
- data/docs/AgentsApi.md +745 -0
- data/docs/AnalyticsApi.md +498 -0
- data/docs/ApiActivity.md +36 -0
- data/docs/ApiActivityOutcome.md +15 -0
- data/docs/ApiKey.md +32 -0
- data/docs/ApiKeyAbility.md +15 -0
- data/docs/ApiKeyInput.md +24 -0
- data/docs/ApproveAgentProposal200Response.md +18 -0
- data/docs/ApproveAgentProposal409Response.md +20 -0
- data/docs/ApproveInboxReplyDraft403Response.md +20 -0
- data/docs/BlogToSocial200Response.md +3 -1
- data/docs/BlogToSocialInput.md +3 -1
- data/docs/BrandVoice.md +48 -0
- data/docs/BrandVoiceInput.md +46 -0
- data/docs/BrandVoiceMeta.md +18 -0
- data/docs/ChannelAccount.md +36 -0
- data/docs/CodedError.md +22 -0
- data/docs/Competitor.md +34 -0
- data/docs/CompetitorDetail.md +38 -0
- data/docs/CompetitorInput.md +20 -0
- data/docs/CompetitorMedia.md +28 -0
- data/docs/CompetitorSnapshot.md +22 -0
- data/docs/CompetitorsApi.md +296 -0
- data/docs/ConnectChannelInput.md +24 -0
- data/docs/CreateAccountGroup201Response.md +18 -0
- data/docs/CreateAgent201Response.md +18 -0
- data/docs/CreateApiKey201Response.md +18 -0
- data/docs/CreateApiKey201ResponseData.md +34 -0
- data/docs/CreateHashtagGroup201Response.md +18 -0
- data/docs/CreateInboxReplyDraft201Response.md +18 -0
- data/docs/CreateRecyclingRule201Response.md +18 -0
- data/docs/CreateReportExport201Response.md +18 -0
- data/docs/CreateResellerClient201Response.md +18 -0
- data/docs/CreateRssFeed201Response.md +18 -0
- data/docs/CreateTemplate201Response.md +18 -0
- data/docs/CreateWebhookSubscription201Response.md +18 -0
- data/docs/CreateWebhookSubscription201ResponseData.md +30 -0
- data/docs/DeleteAgent200Response.md +18 -0
- data/docs/GetAccountHealth200Response.md +18 -0
- data/docs/GetBrandVoice200Response.md +18 -0
- data/docs/GetCompetitor200Response.md +18 -0
- data/docs/GetInboxConversation200Response.md +18 -0
- data/docs/GetPostingSchedule200Response.md +18 -0
- data/docs/GetReportBranding200Response.md +18 -0
- data/docs/GuardrailError.md +28 -0
- data/docs/HashtagGroup.md +22 -0
- data/docs/HashtagGroupInput.md +20 -0
- data/docs/HashtagGroupsApi.md +372 -0
- data/docs/ImageCreditBalance.md +28 -0
- data/docs/ImageEditInput.md +2 -0
- data/docs/ImageGenerate200Response.md +3 -1
- data/docs/ImageGenerateInput.md +3 -1
- data/docs/ImagePrompt200Response.md +3 -1
- data/docs/ImagePromptInput.md +3 -1
- data/docs/InboxApi.md +758 -0
- data/docs/InboxAuthor.md +22 -0
- data/docs/InboxConversation.md +46 -0
- data/docs/InboxConversationAccount.md +24 -0
- data/docs/InboxConversationUpdate.md +20 -0
- data/docs/InboxMessage.md +32 -0
- data/docs/InboxMessageAuthor.md +22 -0
- data/docs/InboxReplyDraft.md +42 -0
- data/docs/InboxReplyDraftApprove.md +18 -0
- data/docs/InboxReplyDraftEdit.md +18 -0
- data/docs/InboxReplyDraftInput.md +20 -0
- data/docs/LearnBrandVoiceInput.md +24 -0
- data/docs/LearnBrandVoiceResponse.md +20 -0
- data/docs/LearnBrandVoiceResponseMeta.md +26 -0
- data/docs/ListAccountGroups200Response.md +22 -0
- data/docs/ListAgentProposals200Response.md +20 -0
- data/docs/ListAgentRuns200Response.md +20 -0
- data/docs/ListAgents200Response.md +18 -0
- data/docs/ListApiActivity200Response.md +22 -0
- data/docs/ListApiKeys200Response.md +18 -0
- data/docs/ListCompetitors200Response.md +18 -0
- data/docs/ListHashtagGroups200Response.md +22 -0
- data/docs/ListInboxConversations200Response.md +22 -0
- data/docs/ListInboxReplyDrafts200Response.md +22 -0
- data/docs/ListRecyclingRules200Response.md +18 -0
- data/docs/ListRecyclingRuns200Response.md +18 -0
- data/docs/ListReportExports200Response.md +18 -0
- data/docs/ListResellerClients200Response.md +20 -0
- data/docs/ListRssFeeds200Response.md +18 -0
- data/docs/ListTemplates200Response.md +22 -0
- data/docs/ListWebhookSubscriptions200Response.md +18 -0
- data/docs/MediaApi.md +103 -13
- data/docs/MediaBase64Input.md +24 -0
- data/docs/MentionsApi.md +8 -4
- data/docs/MessageOnly.md +18 -0
- data/docs/PollRssFeed200Response.md +22 -0
- data/docs/PostContent.md +1 -1
- data/docs/PostInput.md +5 -1
- data/docs/PostOptionsInstagram.md +22 -0
- data/docs/PostOptionsTikTok.md +34 -0
- data/docs/PostOptionsYoutube.md +24 -0
- data/docs/PostVersion.md +2 -2
- data/docs/PostVersionOptions.md +24 -0
- data/docs/PostingSchedule.md +28 -0
- data/docs/PostingScheduleApi.md +377 -0
- data/docs/PostingScheduleDay.md +22 -0
- data/docs/PostingScheduleDayTimesInner.md +18 -0
- data/docs/PostingScheduleInput.md +24 -0
- data/docs/PostsApi.md +1132 -110
- data/docs/PreflightResult.md +26 -0
- data/docs/QueueSlots.md +20 -0
- data/docs/RecommendedPostingTimes.md +26 -0
- data/docs/ReconnectLink.md +22 -0
- data/docs/RecyclingRule.md +42 -0
- data/docs/RecyclingRuleInput.md +34 -0
- data/docs/RecyclingRuleSettings.md +28 -0
- data/docs/RecyclingRuleUpdate.md +28 -0
- data/docs/RecyclingRun.md +28 -0
- data/docs/ReportBranding.md +28 -0
- data/docs/ReportBrandingInput.md +24 -0
- data/docs/ReportExport.md +42 -0
- data/docs/ReportExportInput.md +28 -0
- data/docs/RepurposeContent200Response.md +20 -0
- data/docs/RepurposeInput.md +54 -0
- data/docs/RepurposeInputTheme.md +22 -0
- data/docs/RepurposeResult.md +32 -0
- data/docs/RepurposeResultMedia.md +20 -0
- data/docs/RepurposeResultSource.md +22 -0
- data/docs/RepurposeSlide.md +20 -0
- data/docs/ResellerClient.md +32 -0
- data/docs/ResellerClientInput.md +18 -0
- data/docs/ResellerClientUsage.md +20 -0
- data/docs/RssFeed.md +38 -0
- data/docs/RssFeedInput.md +30 -0
- data/docs/RssFeedUpdate.md +30 -0
- data/docs/RunAgent202Response.md +18 -0
- data/docs/TagsApi.md +8 -4
- data/docs/Template.md +22 -0
- data/docs/TemplateContentItem.md +20 -0
- data/docs/TemplateInput.md +20 -0
- data/docs/TemplateInputContentInner.md +20 -0
- data/docs/TemplatesApi.md +372 -0
- data/docs/WebhookEventName.md +15 -0
- data/docs/WebhookEventPayload.md +20 -0
- data/docs/WebhookSubscription.md +28 -0
- data/docs/WebhookSubscriptionInput.md +24 -0
- data/docs/WebhooksApi.md +221 -0
- data/docs/WorkspaceAgent.md +34 -0
- data/docs/WorkspaceAgentInput.md +26 -0
- data/docs/WorkspaceAgentSettings.md +26 -0
- data/docs/WorkspaceAgentUpdate.md +24 -0
- data/docs/WorkspacesApi.md +426 -0
- data/docs/XUsage.md +28 -0
- data/docs/XUsageCounter.md +20 -0
- data/lib/postboost/api/account_groups_api.rb +395 -0
- data/lib/postboost/api/accounts_api.rb +219 -2
- data/lib/postboost/api/activity_api.rb +97 -0
- data/lib/postboost/api/agents_api.rb +771 -0
- data/lib/postboost/api/ai_api.rb +420 -2
- data/lib/postboost/api/analytics_api.rb +487 -2
- data/lib/postboost/api/competitors_api.rb +300 -0
- data/lib/postboost/api/hashtag_groups_api.rb +395 -0
- data/lib/postboost/api/inbox_api.rb +789 -0
- data/lib/postboost/api/media_api.rb +133 -4
- data/lib/postboost/api/mentions_api.rb +13 -2
- data/lib/postboost/api/posting_schedule_api.rb +389 -0
- data/lib/postboost/api/posts_api.rb +1149 -96
- data/lib/postboost/api/receipts_api.rb +2 -2
- data/lib/postboost/api/subscriptions_api.rb +2 -2
- data/lib/postboost/api/tags_api.rb +13 -2
- data/lib/postboost/api/templates_api.rb +395 -0
- data/lib/postboost/api/users_api.rb +2 -2
- data/lib/postboost/api/webhooks_api.rb +228 -0
- data/lib/postboost/api/workspaces_api.rb +408 -2
- data/lib/postboost/api_client.rb +2 -2
- data/lib/postboost/api_error.rb +2 -2
- data/lib/postboost/configuration.rb +2 -2
- data/lib/postboost/models/account.rb +28 -4
- data/lib/postboost/models/account_analytics.rb +2 -2
- data/lib/postboost/models/account_analytics_initial_sync.rb +2 -2
- data/lib/postboost/models/account_connection_health.rb +389 -0
- data/lib/postboost/models/account_errors_inner.rb +105 -0
- data/lib/postboost/models/account_errors_inner_one_of.rb +243 -0
- data/lib/postboost/models/account_group.rb +271 -0
- data/lib/postboost/models/account_group_input.rb +252 -0
- data/lib/postboost/models/account_health.rb +352 -0
- data/lib/postboost/models/account_health_daily_cap.rb +239 -0
- data/lib/postboost/models/account_schedule.rb +2 -2
- data/lib/postboost/models/add_competitor202_response.rb +271 -0
- data/lib/postboost/models/add_competitor409_response.rb +223 -0
- data/lib/postboost/models/add_generic_subscription_request.rb +2 -2
- data/lib/postboost/models/add_post_to_queue_request.rb +2 -2
- data/lib/postboost/models/agent_page_meta.rb +269 -0
- data/lib/postboost/models/agent_proposal.rb +444 -0
- data/lib/postboost/models/agent_proposal_decision.rb +233 -0
- data/lib/postboost/models/agent_run.rb +434 -0
- data/lib/postboost/models/ai_credits.rb +2 -2
- data/lib/postboost/models/ai_usage.rb +237 -0
- data/lib/postboost/models/ai_usage_text.rb +252 -0
- data/lib/postboost/models/analytics_period.rb +2 -2
- data/lib/postboost/models/analytics_summary.rb +2 -2
- data/lib/postboost/models/analytics_summary_data.rb +2 -2
- data/lib/postboost/models/api_activity.rb +359 -0
- data/lib/postboost/models/api_activity_outcome.rb +49 -0
- data/lib/postboost/models/api_key.rb +308 -0
- data/lib/postboost/models/api_key_ability.rb +43 -0
- data/lib/postboost/models/api_key_input.rb +316 -0
- data/lib/postboost/models/approve_agent_proposal200_response.rb +221 -0
- data/lib/postboost/models/approve_agent_proposal409_response.rb +237 -0
- data/lib/postboost/models/approve_inbox_reply_draft403_response.rb +264 -0
- data/lib/postboost/models/approve_post_request.rb +2 -2
- data/lib/postboost/models/best_posting_times.rb +2 -2
- data/lib/postboost/models/best_posting_times_times_inner.rb +2 -2
- data/lib/postboost/models/blog_to_social200_response.rb +15 -6
- data/lib/postboost/models/blog_to_social429_response.rb +2 -2
- data/lib/postboost/models/blog_to_social_caption.rb +2 -2
- data/lib/postboost/models/blog_to_social_input.rb +18 -6
- data/lib/postboost/models/blog_to_social_media.rb +2 -2
- data/lib/postboost/models/blog_to_social_response.rb +2 -2
- data/lib/postboost/models/brand_voice.rb +531 -0
- data/lib/postboost/models/brand_voice_input.rb +646 -0
- data/lib/postboost/models/brand_voice_meta.rb +222 -0
- data/lib/postboost/models/cancel_subscription422_response.rb +2 -2
- data/lib/postboost/models/cancel_subscription422_response_errors.rb +2 -2
- data/lib/postboost/models/cancel_subscription_request.rb +2 -2
- data/lib/postboost/models/change_subscription_plan_request.rb +2 -2
- data/lib/postboost/models/channel_account.rb +380 -0
- data/lib/postboost/models/checkout_subscription200_response.rb +2 -2
- data/lib/postboost/models/checkout_subscription_request.rb +2 -2
- data/lib/postboost/models/coded_error.rb +242 -0
- data/lib/postboost/models/competitor.rb +320 -0
- data/lib/postboost/models/competitor_detail.rb +358 -0
- data/lib/postboost/models/competitor_input.rb +258 -0
- data/lib/postboost/models/competitor_media.rb +263 -0
- data/lib/postboost/models/competitor_snapshot.rb +234 -0
- data/lib/postboost/models/complete_chunked_upload_request.rb +2 -2
- data/lib/postboost/models/connect_channel_input.rb +265 -0
- data/lib/postboost/models/create_account_group201_response.rb +221 -0
- data/lib/postboost/models/create_agent201_response.rb +221 -0
- data/lib/postboost/models/create_api_key201_response.rb +221 -0
- data/lib/postboost/models/create_api_key201_response_data.rb +327 -0
- data/lib/postboost/models/create_hashtag_group201_response.rb +221 -0
- data/lib/postboost/models/create_inbox_reply_draft201_response.rb +221 -0
- data/lib/postboost/models/create_media_folder_request.rb +2 -2
- data/lib/postboost/models/create_mention201_response.rb +2 -2
- data/lib/postboost/models/create_recycling_rule201_response.rb +221 -0
- data/lib/postboost/models/create_report_export201_response.rb +221 -0
- data/lib/postboost/models/create_reseller_client201_response.rb +221 -0
- data/lib/postboost/models/create_rss_feed201_response.rb +221 -0
- data/lib/postboost/models/create_template201_response.rb +221 -0
- data/lib/postboost/models/create_webhook_subscription201_response.rb +221 -0
- data/lib/postboost/models/create_webhook_subscription201_response_data.rb +320 -0
- data/lib/postboost/models/delete_agent200_response.rb +221 -0
- data/lib/postboost/models/delete_media_bulk_request.rb +2 -2
- data/lib/postboost/models/delete_media_bulk_request_items_inner.rb +2 -2
- data/lib/postboost/models/delete_media_folder_request.rb +2 -2
- data/lib/postboost/models/delete_mode.rb +2 -2
- data/lib/postboost/models/delete_post_request.rb +2 -2
- data/lib/postboost/models/delete_posts_bulk_request.rb +2 -2
- data/lib/postboost/models/delete_receipts_bulk_request.rb +2 -2
- data/lib/postboost/models/delete_result.rb +2 -2
- data/lib/postboost/models/delete_user400_response.rb +2 -2
- data/lib/postboost/models/delete_users_bulk_request.rb +2 -2
- data/lib/postboost/models/delete_workspaces_bulk_request.rb +2 -2
- data/lib/postboost/models/get_account_health200_response.rb +223 -0
- data/lib/postboost/models/get_brand_voice200_response.rb +217 -0
- data/lib/postboost/models/get_competitor200_response.rb +221 -0
- data/lib/postboost/models/get_inbox_conversation200_response.rb +221 -0
- data/lib/postboost/models/get_posting_schedule200_response.rb +221 -0
- data/lib/postboost/models/get_remote_upload_status200_response.rb +2 -2
- data/lib/postboost/models/get_report_branding200_response.rb +221 -0
- data/lib/postboost/models/guardrail_error.rb +304 -0
- data/lib/postboost/models/hashtag_group.rb +254 -0
- data/lib/postboost/models/hashtag_group_input.rb +275 -0
- data/lib/postboost/models/image_alt_text200_response.rb +2 -2
- data/lib/postboost/models/image_alt_text_input.rb +2 -2
- data/lib/postboost/models/image_alt_text_response.rb +2 -2
- data/lib/postboost/models/image_credit_balance.rb +295 -0
- data/lib/postboost/models/image_edit_input.rb +15 -3
- data/lib/postboost/models/image_generate200_response.rb +15 -6
- data/lib/postboost/models/image_generate429_response.rb +2 -2
- data/lib/postboost/models/image_generate_input.rb +35 -3
- data/lib/postboost/models/image_generation_response.rb +2 -2
- data/lib/postboost/models/image_prompt200_response.rb +15 -6
- data/lib/postboost/models/image_prompt429_response.rb +2 -2
- data/lib/postboost/models/image_prompt_input.rb +35 -3
- data/lib/postboost/models/image_prompt_response.rb +2 -2
- data/lib/postboost/models/image_variations200_response.rb +2 -2
- data/lib/postboost/models/image_variations_input.rb +2 -2
- data/lib/postboost/models/image_variations_response.rb +2 -2
- data/lib/postboost/models/inbox_author.rb +235 -0
- data/lib/postboost/models/inbox_conversation.rb +425 -0
- data/lib/postboost/models/inbox_conversation_account.rb +241 -0
- data/lib/postboost/models/inbox_conversation_update.rb +257 -0
- data/lib/postboost/models/inbox_message.rb +360 -0
- data/lib/postboost/models/inbox_message_author.rb +235 -0
- data/lib/postboost/models/inbox_reply_draft.rb +410 -0
- data/lib/postboost/models/inbox_reply_draft_approve.rb +215 -0
- data/lib/postboost/models/inbox_reply_draft_edit.rb +221 -0
- data/lib/postboost/models/inbox_reply_draft_input.rb +232 -0
- data/lib/postboost/models/initiate_chunked_upload201_response.rb +2 -2
- data/lib/postboost/models/initiate_chunked_upload_request.rb +2 -2
- data/lib/postboost/models/initiate_remote_upload201_response.rb +2 -2
- data/lib/postboost/models/initiate_remote_upload201_response_one_of.rb +2 -2
- data/lib/postboost/models/initiate_remote_upload_request.rb +2 -2
- data/lib/postboost/models/learn_brand_voice_input.rb +300 -0
- data/lib/postboost/models/learn_brand_voice_response.rb +237 -0
- data/lib/postboost/models/learn_brand_voice_response_meta.rb +281 -0
- data/lib/postboost/models/list_account_groups200_response.rb +248 -0
- data/lib/postboost/models/list_accounts200_response.rb +2 -2
- data/lib/postboost/models/list_agent_proposals200_response.rb +239 -0
- data/lib/postboost/models/list_agent_runs200_response.rb +239 -0
- data/lib/postboost/models/list_agents200_response.rb +223 -0
- data/lib/postboost/models/list_api_activity200_response.rb +241 -0
- data/lib/postboost/models/list_api_keys200_response.rb +223 -0
- data/lib/postboost/models/list_competitors200_response.rb +223 -0
- data/lib/postboost/models/list_hashtag_groups200_response.rb +248 -0
- data/lib/postboost/models/list_inbox_conversations200_response.rb +241 -0
- data/lib/postboost/models/list_inbox_reply_drafts200_response.rb +241 -0
- data/lib/postboost/models/list_media200_response.rb +2 -2
- data/lib/postboost/models/list_media_folders200_response.rb +2 -2
- data/lib/postboost/models/list_mentions200_response.rb +2 -2
- data/lib/postboost/models/list_my_workspaces200_response.rb +2 -2
- data/lib/postboost/models/list_posts200_response.rb +2 -2
- data/lib/postboost/models/list_receipts200_response.rb +2 -2
- data/lib/postboost/models/list_recycling_rules200_response.rb +223 -0
- data/lib/postboost/models/list_recycling_runs200_response.rb +223 -0
- data/lib/postboost/models/list_report_exports200_response.rb +223 -0
- data/lib/postboost/models/list_reseller_clients200_response.rb +239 -0
- data/lib/postboost/models/list_rss_feeds200_response.rb +223 -0
- data/lib/postboost/models/list_tags200_response.rb +2 -2
- data/lib/postboost/models/list_templates200_response.rb +248 -0
- data/lib/postboost/models/list_users200_response.rb +2 -2
- data/lib/postboost/models/list_webhook_subscriptions200_response.rb +223 -0
- data/lib/postboost/models/list_workspaces200_response.rb +2 -2
- data/lib/postboost/models/media.rb +2 -2
- data/lib/postboost/models/media_base64_input.rb +295 -0
- data/lib/postboost/models/media_folder.rb +2 -2
- data/lib/postboost/models/media_folder_input.rb +2 -2
- data/lib/postboost/models/media_folder_ref.rb +2 -2
- data/lib/postboost/models/mention.rb +2 -2
- data/lib/postboost/models/mention_identity.rb +2 -2
- data/lib/postboost/models/mention_identity_input.rb +2 -2
- data/lib/postboost/models/mention_input.rb +2 -2
- data/lib/postboost/models/message_only.rb +221 -0
- data/lib/postboost/models/pagination_meta.rb +2 -2
- data/lib/postboost/models/pagination_meta_links.rb +4 -2
- data/lib/postboost/models/pagination_meta_meta.rb +4 -2
- data/lib/postboost/models/poll_rss_feed200_response.rb +255 -0
- data/lib/postboost/models/post.rb +2 -2
- data/lib/postboost/models/post_analytics.rb +2 -2
- data/lib/postboost/models/post_content.rb +4 -3
- data/lib/postboost/models/post_input.rb +28 -6
- data/lib/postboost/models/post_options_instagram.rb +294 -0
- data/lib/postboost/models/post_options_tik_tok.rb +329 -0
- data/lib/postboost/models/post_options_youtube.rb +302 -0
- data/lib/postboost/models/post_status.rb +2 -2
- data/lib/postboost/models/post_version.rb +23 -4
- data/lib/postboost/models/post_version_options.rb +242 -0
- data/lib/postboost/models/posting_schedule.rb +303 -0
- data/lib/postboost/models/posting_schedule_day.rb +285 -0
- data/lib/postboost/models/posting_schedule_day_times_inner.rb +222 -0
- data/lib/postboost/models/posting_schedule_input.rb +312 -0
- data/lib/postboost/models/posting_time_slot.rb +2 -2
- data/lib/postboost/models/posting_times.rb +2 -2
- data/lib/postboost/models/posting_times_best_inner.rb +2 -2
- data/lib/postboost/models/posting_times_day_intervals_inner_inner.rb +2 -2
- data/lib/postboost/models/posting_times_days_inner.rb +2 -2
- data/lib/postboost/models/preflight_result.rb +291 -0
- data/lib/postboost/models/public_workspace.rb +2 -2
- data/lib/postboost/models/public_workspace_pivot.rb +2 -2
- data/lib/postboost/models/publish_progress.rb +2 -2
- data/lib/postboost/models/queue_slots.rb +237 -0
- data/lib/postboost/models/receipt.rb +2 -2
- data/lib/postboost/models/receipt_input.rb +2 -2
- data/lib/postboost/models/receipt_update_input.rb +2 -2
- data/lib/postboost/models/recommended_posting_times.rb +282 -0
- data/lib/postboost/models/reconnect_link.rb +254 -0
- data/lib/postboost/models/recycling_rule.rb +434 -0
- data/lib/postboost/models/recycling_rule_input.rb +435 -0
- data/lib/postboost/models/recycling_rule_settings.rb +381 -0
- data/lib/postboost/models/recycling_rule_update.rb +366 -0
- data/lib/postboost/models/recycling_run.rb +320 -0
- data/lib/postboost/models/remove_generic_subscription422_response.rb +2 -2
- data/lib/postboost/models/remove_user_from_workspace_request.rb +2 -2
- data/lib/postboost/models/report_branding.rb +285 -0
- data/lib/postboost/models/report_branding_input.rb +293 -0
- data/lib/postboost/models/report_export.rb +442 -0
- data/lib/postboost/models/report_export_input.rb +350 -0
- data/lib/postboost/models/repurpose_content200_response.rb +237 -0
- data/lib/postboost/models/repurpose_input.rb +667 -0
- data/lib/postboost/models/repurpose_input_theme.rb +296 -0
- data/lib/postboost/models/repurpose_result.rb +328 -0
- data/lib/postboost/models/repurpose_result_media.rb +224 -0
- data/lib/postboost/models/repurpose_result_source.rb +283 -0
- data/lib/postboost/models/repurpose_slide.rb +239 -0
- data/lib/postboost/models/reseller_client.rb +360 -0
- data/lib/postboost/models/reseller_client_input.rb +240 -0
- data/lib/postboost/models/reseller_client_usage.rb +239 -0
- data/lib/postboost/models/retry_post_account_result.rb +2 -2
- data/lib/postboost/models/rss_feed.rb +402 -0
- data/lib/postboost/models/rss_feed_input.rb +433 -0
- data/lib/postboost/models/rss_feed_update.rb +396 -0
- data/lib/postboost/models/run_agent202_response.rb +221 -0
- data/lib/postboost/models/schedule_post_request.rb +2 -2
- data/lib/postboost/models/schedule_result.rb +2 -2
- data/lib/postboost/models/subscription.rb +2 -2
- data/lib/postboost/models/subscription_input.rb +2 -2
- data/lib/postboost/models/subscription_status.rb +2 -2
- data/lib/postboost/models/subscription_update_input.rb +2 -2
- data/lib/postboost/models/tag.rb +2 -2
- data/lib/postboost/models/tag_input.rb +2 -2
- data/lib/postboost/models/template.rb +256 -0
- data/lib/postboost/models/template_content_item.rb +240 -0
- data/lib/postboost/models/template_input.rb +271 -0
- data/lib/postboost/models/template_input_content_inner.rb +227 -0
- data/lib/postboost/models/update_media_request.rb +2 -2
- data/lib/postboost/models/upload_chunk201_response.rb +2 -2
- data/lib/postboost/models/user.rb +2 -2
- data/lib/postboost/models/user_input.rb +2 -2
- data/lib/postboost/models/user_update_input.rb +2 -2
- data/lib/postboost/models/webhook_event_name.rb +50 -0
- data/lib/postboost/models/webhook_event_payload.rb +262 -0
- data/lib/postboost/models/webhook_subscription.rb +297 -0
- data/lib/postboost/models/webhook_subscription_input.rb +349 -0
- data/lib/postboost/models/workspace.rb +2 -2
- data/lib/postboost/models/workspace_agent.rb +381 -0
- data/lib/postboost/models/workspace_agent_input.rb +326 -0
- data/lib/postboost/models/workspace_agent_settings.rb +340 -0
- data/lib/postboost/models/workspace_agent_update.rb +294 -0
- data/lib/postboost/models/workspace_input.rb +2 -2
- data/lib/postboost/models/workspace_user_input.rb +2 -2
- data/lib/postboost/models/x_usage.rb +303 -0
- data/lib/postboost/models/x_usage_counter.rb +234 -0
- data/lib/postboost/version.rb +3 -3
- data/lib/postboost.rb +151 -2
- data/postboost.gemspec +3 -3
- data/spec/api/account_groups_api_spec.rb +102 -0
- data/spec/api/accounts_api_spec.rb +41 -2
- data/spec/api/activity_api_spec.rb +51 -0
- data/spec/api/agents_api_spec.rb +170 -0
- data/spec/api/ai_api_spec.rb +78 -2
- data/spec/api/analytics_api_spec.rb +90 -2
- data/spec/api/competitors_api_spec.rb +87 -0
- data/spec/api/hashtag_groups_api_spec.rb +102 -0
- data/spec/api/inbox_api_spec.rb +178 -0
- data/spec/api/media_api_spec.rb +21 -3
- data/spec/api/mentions_api_spec.rb +3 -2
- data/spec/api/posting_schedule_api_spec.rb +102 -0
- data/spec/api/posts_api_spec.rb +189 -3
- data/spec/api/receipts_api_spec.rb +2 -2
- data/spec/api/subscriptions_api_spec.rb +2 -2
- data/spec/api/tags_api_spec.rb +3 -2
- data/spec/api/templates_api_spec.rb +102 -0
- data/spec/api/users_api_spec.rb +2 -2
- data/spec/api/webhooks_api_spec.rb +73 -0
- data/spec/api/workspaces_api_spec.rb +77 -2
- data/spec/models/account_analytics_initial_sync_spec.rb +2 -2
- data/spec/models/account_analytics_spec.rb +2 -2
- data/spec/models/account_connection_health_spec.rb +92 -0
- data/spec/models/account_errors_inner_one_of_spec.rb +54 -0
- data/spec/models/account_errors_inner_spec.rb +32 -0
- data/spec/models/account_group_input_spec.rb +42 -0
- data/spec/models/account_group_spec.rb +54 -0
- data/spec/models/account_health_daily_cap_spec.rb +42 -0
- data/spec/models/account_health_spec.rb +84 -0
- data/spec/models/account_schedule_spec.rb +2 -2
- data/spec/models/account_spec.rb +14 -2
- data/spec/models/add_competitor202_response_spec.rb +46 -0
- data/spec/models/add_competitor409_response_spec.rb +42 -0
- data/spec/models/add_generic_subscription_request_spec.rb +2 -2
- data/spec/models/add_post_to_queue_request_spec.rb +2 -2
- data/spec/models/agent_page_meta_spec.rb +54 -0
- data/spec/models/agent_proposal_decision_spec.rb +36 -0
- data/spec/models/agent_proposal_spec.rb +126 -0
- data/spec/models/agent_run_spec.rb +122 -0
- data/spec/models/ai_credits_spec.rb +2 -2
- data/spec/models/ai_usage_spec.rb +42 -0
- data/spec/models/ai_usage_text_spec.rb +54 -0
- data/spec/models/analytics_period_spec.rb +2 -2
- data/spec/models/analytics_summary_data_spec.rb +2 -2
- data/spec/models/analytics_summary_spec.rb +2 -2
- data/spec/models/api_activity_outcome_spec.rb +30 -0
- data/spec/models/api_activity_spec.rb +90 -0
- data/spec/models/api_key_ability_spec.rb +30 -0
- data/spec/models/api_key_input_spec.rb +54 -0
- data/spec/models/api_key_spec.rb +78 -0
- data/spec/models/approve_agent_proposal200_response_spec.rb +36 -0
- data/spec/models/approve_agent_proposal409_response_spec.rb +42 -0
- data/spec/models/approve_inbox_reply_draft403_response_spec.rb +46 -0
- data/spec/models/approve_post_request_spec.rb +2 -2
- data/spec/models/best_posting_times_spec.rb +2 -2
- data/spec/models/best_posting_times_times_inner_spec.rb +2 -2
- data/spec/models/blog_to_social200_response_spec.rb +8 -2
- data/spec/models/blog_to_social429_response_spec.rb +2 -2
- data/spec/models/blog_to_social_caption_spec.rb +2 -2
- data/spec/models/blog_to_social_input_spec.rb +8 -2
- data/spec/models/blog_to_social_media_spec.rb +2 -2
- data/spec/models/blog_to_social_response_spec.rb +2 -2
- data/spec/models/brand_voice_input_spec.rb +128 -0
- data/spec/models/brand_voice_meta_spec.rb +36 -0
- data/spec/models/brand_voice_spec.rb +134 -0
- data/spec/models/cancel_subscription422_response_errors_spec.rb +2 -2
- data/spec/models/cancel_subscription422_response_spec.rb +2 -2
- data/spec/models/cancel_subscription_request_spec.rb +2 -2
- data/spec/models/change_subscription_plan_request_spec.rb +2 -2
- data/spec/models/channel_account_spec.rb +94 -0
- data/spec/models/checkout_subscription200_response_spec.rb +2 -2
- data/spec/models/checkout_subscription_request_spec.rb +2 -2
- data/spec/models/coded_error_spec.rb +48 -0
- data/spec/models/competitor_detail_spec.rb +96 -0
- data/spec/models/competitor_input_spec.rb +42 -0
- data/spec/models/competitor_media_spec.rb +66 -0
- data/spec/models/competitor_snapshot_spec.rb +48 -0
- data/spec/models/competitor_spec.rb +84 -0
- data/spec/models/complete_chunked_upload_request_spec.rb +2 -2
- data/spec/models/connect_channel_input_spec.rb +54 -0
- data/spec/models/create_account_group201_response_spec.rb +36 -0
- data/spec/models/create_agent201_response_spec.rb +36 -0
- data/spec/models/create_api_key201_response_data_spec.rb +84 -0
- data/spec/models/create_api_key201_response_spec.rb +36 -0
- data/spec/models/create_hashtag_group201_response_spec.rb +36 -0
- data/spec/models/create_inbox_reply_draft201_response_spec.rb +36 -0
- data/spec/models/create_media_folder_request_spec.rb +2 -2
- data/spec/models/create_mention201_response_spec.rb +2 -2
- data/spec/models/create_recycling_rule201_response_spec.rb +36 -0
- data/spec/models/create_report_export201_response_spec.rb +36 -0
- data/spec/models/create_reseller_client201_response_spec.rb +36 -0
- data/spec/models/create_rss_feed201_response_spec.rb +36 -0
- data/spec/models/create_template201_response_spec.rb +36 -0
- data/spec/models/create_webhook_subscription201_response_data_spec.rb +72 -0
- data/spec/models/create_webhook_subscription201_response_spec.rb +36 -0
- data/spec/models/delete_agent200_response_spec.rb +36 -0
- data/spec/models/delete_media_bulk_request_items_inner_spec.rb +2 -2
- data/spec/models/delete_media_bulk_request_spec.rb +2 -2
- data/spec/models/delete_media_folder_request_spec.rb +2 -2
- data/spec/models/delete_mode_spec.rb +2 -2
- data/spec/models/delete_post_request_spec.rb +2 -2
- data/spec/models/delete_posts_bulk_request_spec.rb +2 -2
- data/spec/models/delete_receipts_bulk_request_spec.rb +2 -2
- data/spec/models/delete_result_spec.rb +2 -2
- data/spec/models/delete_user400_response_spec.rb +2 -2
- data/spec/models/delete_users_bulk_request_spec.rb +2 -2
- data/spec/models/delete_workspaces_bulk_request_spec.rb +2 -2
- data/spec/models/get_account_health200_response_spec.rb +36 -0
- data/spec/models/get_brand_voice200_response_spec.rb +36 -0
- data/spec/models/get_competitor200_response_spec.rb +36 -0
- data/spec/models/get_inbox_conversation200_response_spec.rb +36 -0
- data/spec/models/get_posting_schedule200_response_spec.rb +36 -0
- data/spec/models/get_remote_upload_status200_response_spec.rb +2 -2
- data/spec/models/get_report_branding200_response_spec.rb +36 -0
- data/spec/models/guardrail_error_spec.rb +70 -0
- data/spec/models/hashtag_group_input_spec.rb +42 -0
- data/spec/models/hashtag_group_spec.rb +48 -0
- data/spec/models/image_alt_text200_response_spec.rb +2 -2
- data/spec/models/image_alt_text_input_spec.rb +2 -2
- data/spec/models/image_alt_text_response_spec.rb +2 -2
- data/spec/models/image_credit_balance_spec.rb +66 -0
- data/spec/models/image_edit_input_spec.rb +8 -2
- data/spec/models/image_generate200_response_spec.rb +8 -2
- data/spec/models/image_generate429_response_spec.rb +2 -2
- data/spec/models/image_generate_input_spec.rb +8 -2
- data/spec/models/image_generation_response_spec.rb +2 -2
- data/spec/models/image_prompt200_response_spec.rb +8 -2
- data/spec/models/image_prompt429_response_spec.rb +2 -2
- data/spec/models/image_prompt_input_spec.rb +8 -2
- data/spec/models/image_prompt_response_spec.rb +2 -2
- data/spec/models/image_variations200_response_spec.rb +2 -2
- data/spec/models/image_variations_input_spec.rb +2 -2
- data/spec/models/image_variations_response_spec.rb +2 -2
- data/spec/models/inbox_author_spec.rb +48 -0
- data/spec/models/inbox_conversation_account_spec.rb +54 -0
- data/spec/models/inbox_conversation_spec.rb +128 -0
- data/spec/models/inbox_conversation_update_spec.rb +46 -0
- data/spec/models/inbox_message_author_spec.rb +48 -0
- data/spec/models/inbox_message_spec.rb +90 -0
- data/spec/models/inbox_reply_draft_approve_spec.rb +36 -0
- data/spec/models/inbox_reply_draft_edit_spec.rb +36 -0
- data/spec/models/inbox_reply_draft_input_spec.rb +42 -0
- data/spec/models/inbox_reply_draft_spec.rb +116 -0
- data/spec/models/initiate_chunked_upload201_response_spec.rb +2 -2
- data/spec/models/initiate_chunked_upload_request_spec.rb +2 -2
- data/spec/models/initiate_remote_upload201_response_one_of_spec.rb +2 -2
- data/spec/models/initiate_remote_upload201_response_spec.rb +2 -2
- data/spec/models/initiate_remote_upload_request_spec.rb +2 -2
- data/spec/models/learn_brand_voice_input_spec.rb +54 -0
- data/spec/models/learn_brand_voice_response_meta_spec.rb +60 -0
- data/spec/models/learn_brand_voice_response_spec.rb +42 -0
- data/spec/models/list_account_groups200_response_spec.rb +48 -0
- data/spec/models/list_accounts200_response_spec.rb +2 -2
- data/spec/models/list_agent_proposals200_response_spec.rb +42 -0
- data/spec/models/list_agent_runs200_response_spec.rb +42 -0
- data/spec/models/list_agents200_response_spec.rb +36 -0
- data/spec/models/list_api_activity200_response_spec.rb +48 -0
- data/spec/models/list_api_keys200_response_spec.rb +36 -0
- data/spec/models/list_competitors200_response_spec.rb +36 -0
- data/spec/models/list_hashtag_groups200_response_spec.rb +48 -0
- data/spec/models/list_inbox_conversations200_response_spec.rb +48 -0
- data/spec/models/list_inbox_reply_drafts200_response_spec.rb +48 -0
- data/spec/models/list_media200_response_spec.rb +2 -2
- data/spec/models/list_media_folders200_response_spec.rb +2 -2
- data/spec/models/list_mentions200_response_spec.rb +2 -2
- data/spec/models/list_my_workspaces200_response_spec.rb +2 -2
- data/spec/models/list_posts200_response_spec.rb +2 -2
- data/spec/models/list_receipts200_response_spec.rb +2 -2
- data/spec/models/list_recycling_rules200_response_spec.rb +36 -0
- data/spec/models/list_recycling_runs200_response_spec.rb +36 -0
- data/spec/models/list_report_exports200_response_spec.rb +36 -0
- data/spec/models/list_reseller_clients200_response_spec.rb +42 -0
- data/spec/models/list_rss_feeds200_response_spec.rb +36 -0
- data/spec/models/list_tags200_response_spec.rb +2 -2
- data/spec/models/list_templates200_response_spec.rb +48 -0
- data/spec/models/list_users200_response_spec.rb +2 -2
- data/spec/models/list_webhook_subscriptions200_response_spec.rb +36 -0
- data/spec/models/list_workspaces200_response_spec.rb +2 -2
- data/spec/models/media_base64_input_spec.rb +54 -0
- data/spec/models/media_folder_input_spec.rb +2 -2
- data/spec/models/media_folder_ref_spec.rb +2 -2
- data/spec/models/media_folder_spec.rb +2 -2
- data/spec/models/media_spec.rb +2 -2
- data/spec/models/mention_identity_input_spec.rb +2 -2
- data/spec/models/mention_identity_spec.rb +2 -2
- data/spec/models/mention_input_spec.rb +2 -2
- data/spec/models/mention_spec.rb +2 -2
- data/spec/models/message_only_spec.rb +36 -0
- data/spec/models/pagination_meta_links_spec.rb +2 -2
- data/spec/models/pagination_meta_meta_spec.rb +2 -2
- data/spec/models/pagination_meta_spec.rb +2 -2
- data/spec/models/poll_rss_feed200_response_spec.rb +48 -0
- data/spec/models/post_analytics_spec.rb +2 -2
- data/spec/models/post_content_spec.rb +2 -2
- data/spec/models/post_input_spec.rb +14 -2
- data/spec/models/post_options_instagram_spec.rb +52 -0
- data/spec/models/post_options_tik_tok_spec.rb +88 -0
- data/spec/models/post_options_youtube_spec.rb +58 -0
- data/spec/models/post_spec.rb +2 -2
- data/spec/models/post_status_spec.rb +2 -2
- data/spec/models/post_version_options_spec.rb +54 -0
- data/spec/models/post_version_spec.rb +2 -2
- data/spec/models/posting_schedule_day_spec.rb +48 -0
- data/spec/models/posting_schedule_day_times_inner_spec.rb +36 -0
- data/spec/models/posting_schedule_input_spec.rb +54 -0
- data/spec/models/posting_schedule_spec.rb +66 -0
- data/spec/models/posting_time_slot_spec.rb +2 -2
- data/spec/models/posting_times_best_inner_spec.rb +2 -2
- data/spec/models/posting_times_day_intervals_inner_inner_spec.rb +2 -2
- data/spec/models/posting_times_days_inner_spec.rb +2 -2
- data/spec/models/posting_times_spec.rb +2 -2
- data/spec/models/preflight_result_spec.rb +60 -0
- data/spec/models/public_workspace_pivot_spec.rb +2 -2
- data/spec/models/public_workspace_spec.rb +2 -2
- data/spec/models/publish_progress_spec.rb +2 -2
- data/spec/models/queue_slots_spec.rb +42 -0
- data/spec/models/receipt_input_spec.rb +2 -2
- data/spec/models/receipt_spec.rb +2 -2
- data/spec/models/receipt_update_input_spec.rb +2 -2
- data/spec/models/recommended_posting_times_spec.rb +60 -0
- data/spec/models/reconnect_link_spec.rb +48 -0
- data/spec/models/recycling_rule_input_spec.rb +92 -0
- data/spec/models/recycling_rule_settings_spec.rb +70 -0
- data/spec/models/recycling_rule_spec.rb +116 -0
- data/spec/models/recycling_rule_update_spec.rb +70 -0
- data/spec/models/recycling_run_spec.rb +70 -0
- data/spec/models/remove_generic_subscription422_response_spec.rb +2 -2
- data/spec/models/remove_user_from_workspace_request_spec.rb +2 -2
- data/spec/models/report_branding_input_spec.rb +54 -0
- data/spec/models/report_branding_spec.rb +66 -0
- data/spec/models/report_export_input_spec.rb +78 -0
- data/spec/models/report_export_spec.rb +120 -0
- data/spec/models/repurpose_content200_response_spec.rb +42 -0
- data/spec/models/repurpose_input_spec.rb +164 -0
- data/spec/models/repurpose_input_theme_spec.rb +48 -0
- data/spec/models/repurpose_result_media_spec.rb +42 -0
- data/spec/models/repurpose_result_source_spec.rb +52 -0
- data/spec/models/repurpose_result_spec.rb +78 -0
- data/spec/models/repurpose_slide_spec.rb +42 -0
- data/spec/models/reseller_client_input_spec.rb +36 -0
- data/spec/models/reseller_client_spec.rb +82 -0
- data/spec/models/reseller_client_usage_spec.rb +42 -0
- data/spec/models/retry_post_account_result_spec.rb +2 -2
- data/spec/models/rss_feed_input_spec.rb +76 -0
- data/spec/models/rss_feed_spec.rb +100 -0
- data/spec/models/rss_feed_update_spec.rb +76 -0
- data/spec/models/run_agent202_response_spec.rb +36 -0
- data/spec/models/schedule_post_request_spec.rb +2 -2
- data/spec/models/schedule_result_spec.rb +2 -2
- data/spec/models/subscription_input_spec.rb +2 -2
- data/spec/models/subscription_spec.rb +2 -2
- data/spec/models/subscription_status_spec.rb +2 -2
- data/spec/models/subscription_update_input_spec.rb +2 -2
- data/spec/models/tag_input_spec.rb +2 -2
- data/spec/models/tag_spec.rb +2 -2
- data/spec/models/template_content_item_spec.rb +42 -0
- data/spec/models/template_input_content_inner_spec.rb +42 -0
- data/spec/models/template_input_spec.rb +42 -0
- data/spec/models/template_spec.rb +48 -0
- data/spec/models/update_media_request_spec.rb +2 -2
- data/spec/models/upload_chunk201_response_spec.rb +2 -2
- data/spec/models/user_input_spec.rb +2 -2
- data/spec/models/user_spec.rb +2 -2
- data/spec/models/user_update_input_spec.rb +2 -2
- data/spec/models/webhook_event_name_spec.rb +30 -0
- data/spec/models/webhook_event_payload_spec.rb +42 -0
- data/spec/models/webhook_subscription_input_spec.rb +58 -0
- data/spec/models/webhook_subscription_spec.rb +66 -0
- data/spec/models/workspace_agent_input_spec.rb +68 -0
- data/spec/models/workspace_agent_settings_spec.rb +60 -0
- data/spec/models/workspace_agent_spec.rb +92 -0
- data/spec/models/workspace_agent_update_spec.rb +58 -0
- data/spec/models/workspace_input_spec.rb +2 -2
- data/spec/models/workspace_spec.rb +2 -2
- data/spec/models/workspace_user_input_spec.rb +2 -2
- data/spec/models/x_usage_counter_spec.rb +42 -0
- data/spec/models/x_usage_spec.rb +66 -0
- data/spec/spec_helper.rb +2 -2
- metadata +615 -4
data/lib/postboost.rb
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
=begin
|
|
2
2
|
#PostBoost API
|
|
3
3
|
|
|
4
|
-
#The PostBoost REST API lets you publish, schedule, and analyze social media posts across 12+ platforms from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace's plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request's `timezone` when one is given, otherwise in the workspace timezone. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
|
|
4
|
+
#The PostBoost REST API lets you publish, schedule, and analyze social media posts across 12+ platforms from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace's plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request's `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account's daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
|
|
5
5
|
|
|
6
|
-
The version of the OpenAPI document: 1.
|
|
6
|
+
The version of the OpenAPI document: 1.14.0
|
|
7
7
|
Contact: hi@postboost.co
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
|
9
9
|
Generator version: 7.9.0
|
|
@@ -18,15 +18,38 @@ require 'postboost/configuration'
|
|
|
18
18
|
|
|
19
19
|
# Models
|
|
20
20
|
require 'postboost/models/ai_credits'
|
|
21
|
+
require 'postboost/models/ai_usage'
|
|
22
|
+
require 'postboost/models/ai_usage_text'
|
|
21
23
|
require 'postboost/models/account'
|
|
22
24
|
require 'postboost/models/account_analytics'
|
|
23
25
|
require 'postboost/models/account_analytics_initial_sync'
|
|
26
|
+
require 'postboost/models/account_connection_health'
|
|
27
|
+
require 'postboost/models/account_errors_inner'
|
|
28
|
+
require 'postboost/models/account_errors_inner_one_of'
|
|
29
|
+
require 'postboost/models/account_group'
|
|
30
|
+
require 'postboost/models/account_group_input'
|
|
31
|
+
require 'postboost/models/account_health'
|
|
32
|
+
require 'postboost/models/account_health_daily_cap'
|
|
24
33
|
require 'postboost/models/account_schedule'
|
|
34
|
+
require 'postboost/models/add_competitor202_response'
|
|
35
|
+
require 'postboost/models/add_competitor409_response'
|
|
25
36
|
require 'postboost/models/add_generic_subscription_request'
|
|
26
37
|
require 'postboost/models/add_post_to_queue_request'
|
|
38
|
+
require 'postboost/models/agent_page_meta'
|
|
39
|
+
require 'postboost/models/agent_proposal'
|
|
40
|
+
require 'postboost/models/agent_proposal_decision'
|
|
41
|
+
require 'postboost/models/agent_run'
|
|
27
42
|
require 'postboost/models/analytics_period'
|
|
28
43
|
require 'postboost/models/analytics_summary'
|
|
29
44
|
require 'postboost/models/analytics_summary_data'
|
|
45
|
+
require 'postboost/models/api_activity'
|
|
46
|
+
require 'postboost/models/api_activity_outcome'
|
|
47
|
+
require 'postboost/models/api_key'
|
|
48
|
+
require 'postboost/models/api_key_ability'
|
|
49
|
+
require 'postboost/models/api_key_input'
|
|
50
|
+
require 'postboost/models/approve_agent_proposal200_response'
|
|
51
|
+
require 'postboost/models/approve_agent_proposal409_response'
|
|
52
|
+
require 'postboost/models/approve_inbox_reply_draft403_response'
|
|
30
53
|
require 'postboost/models/approve_post_request'
|
|
31
54
|
require 'postboost/models/best_posting_times'
|
|
32
55
|
require 'postboost/models/best_posting_times_times_inner'
|
|
@@ -36,15 +59,40 @@ require 'postboost/models/blog_to_social_caption'
|
|
|
36
59
|
require 'postboost/models/blog_to_social_input'
|
|
37
60
|
require 'postboost/models/blog_to_social_media'
|
|
38
61
|
require 'postboost/models/blog_to_social_response'
|
|
62
|
+
require 'postboost/models/brand_voice'
|
|
63
|
+
require 'postboost/models/brand_voice_input'
|
|
64
|
+
require 'postboost/models/brand_voice_meta'
|
|
39
65
|
require 'postboost/models/cancel_subscription422_response'
|
|
40
66
|
require 'postboost/models/cancel_subscription422_response_errors'
|
|
41
67
|
require 'postboost/models/cancel_subscription_request'
|
|
42
68
|
require 'postboost/models/change_subscription_plan_request'
|
|
69
|
+
require 'postboost/models/channel_account'
|
|
43
70
|
require 'postboost/models/checkout_subscription200_response'
|
|
44
71
|
require 'postboost/models/checkout_subscription_request'
|
|
72
|
+
require 'postboost/models/coded_error'
|
|
73
|
+
require 'postboost/models/competitor'
|
|
74
|
+
require 'postboost/models/competitor_detail'
|
|
75
|
+
require 'postboost/models/competitor_input'
|
|
76
|
+
require 'postboost/models/competitor_media'
|
|
77
|
+
require 'postboost/models/competitor_snapshot'
|
|
45
78
|
require 'postboost/models/complete_chunked_upload_request'
|
|
79
|
+
require 'postboost/models/connect_channel_input'
|
|
80
|
+
require 'postboost/models/create_account_group201_response'
|
|
81
|
+
require 'postboost/models/create_agent201_response'
|
|
82
|
+
require 'postboost/models/create_api_key201_response'
|
|
83
|
+
require 'postboost/models/create_api_key201_response_data'
|
|
84
|
+
require 'postboost/models/create_hashtag_group201_response'
|
|
85
|
+
require 'postboost/models/create_inbox_reply_draft201_response'
|
|
46
86
|
require 'postboost/models/create_media_folder_request'
|
|
47
87
|
require 'postboost/models/create_mention201_response'
|
|
88
|
+
require 'postboost/models/create_recycling_rule201_response'
|
|
89
|
+
require 'postboost/models/create_report_export201_response'
|
|
90
|
+
require 'postboost/models/create_reseller_client201_response'
|
|
91
|
+
require 'postboost/models/create_rss_feed201_response'
|
|
92
|
+
require 'postboost/models/create_template201_response'
|
|
93
|
+
require 'postboost/models/create_webhook_subscription201_response'
|
|
94
|
+
require 'postboost/models/create_webhook_subscription201_response_data'
|
|
95
|
+
require 'postboost/models/delete_agent200_response'
|
|
48
96
|
require 'postboost/models/delete_media_bulk_request'
|
|
49
97
|
require 'postboost/models/delete_media_bulk_request_items_inner'
|
|
50
98
|
require 'postboost/models/delete_media_folder_request'
|
|
@@ -56,10 +104,20 @@ require 'postboost/models/delete_result'
|
|
|
56
104
|
require 'postboost/models/delete_user400_response'
|
|
57
105
|
require 'postboost/models/delete_users_bulk_request'
|
|
58
106
|
require 'postboost/models/delete_workspaces_bulk_request'
|
|
107
|
+
require 'postboost/models/get_account_health200_response'
|
|
108
|
+
require 'postboost/models/get_brand_voice200_response'
|
|
109
|
+
require 'postboost/models/get_competitor200_response'
|
|
110
|
+
require 'postboost/models/get_inbox_conversation200_response'
|
|
111
|
+
require 'postboost/models/get_posting_schedule200_response'
|
|
59
112
|
require 'postboost/models/get_remote_upload_status200_response'
|
|
113
|
+
require 'postboost/models/get_report_branding200_response'
|
|
114
|
+
require 'postboost/models/guardrail_error'
|
|
115
|
+
require 'postboost/models/hashtag_group'
|
|
116
|
+
require 'postboost/models/hashtag_group_input'
|
|
60
117
|
require 'postboost/models/image_alt_text200_response'
|
|
61
118
|
require 'postboost/models/image_alt_text_input'
|
|
62
119
|
require 'postboost/models/image_alt_text_response'
|
|
120
|
+
require 'postboost/models/image_credit_balance'
|
|
63
121
|
require 'postboost/models/image_edit_input'
|
|
64
122
|
require 'postboost/models/image_generate200_response'
|
|
65
123
|
require 'postboost/models/image_generate429_response'
|
|
@@ -72,22 +130,53 @@ require 'postboost/models/image_prompt_response'
|
|
|
72
130
|
require 'postboost/models/image_variations200_response'
|
|
73
131
|
require 'postboost/models/image_variations_input'
|
|
74
132
|
require 'postboost/models/image_variations_response'
|
|
133
|
+
require 'postboost/models/inbox_author'
|
|
134
|
+
require 'postboost/models/inbox_conversation'
|
|
135
|
+
require 'postboost/models/inbox_conversation_account'
|
|
136
|
+
require 'postboost/models/inbox_conversation_update'
|
|
137
|
+
require 'postboost/models/inbox_message'
|
|
138
|
+
require 'postboost/models/inbox_message_author'
|
|
139
|
+
require 'postboost/models/inbox_reply_draft'
|
|
140
|
+
require 'postboost/models/inbox_reply_draft_approve'
|
|
141
|
+
require 'postboost/models/inbox_reply_draft_edit'
|
|
142
|
+
require 'postboost/models/inbox_reply_draft_input'
|
|
75
143
|
require 'postboost/models/initiate_chunked_upload201_response'
|
|
76
144
|
require 'postboost/models/initiate_chunked_upload_request'
|
|
77
145
|
require 'postboost/models/initiate_remote_upload201_response'
|
|
78
146
|
require 'postboost/models/initiate_remote_upload201_response_one_of'
|
|
79
147
|
require 'postboost/models/initiate_remote_upload_request'
|
|
148
|
+
require 'postboost/models/learn_brand_voice_input'
|
|
149
|
+
require 'postboost/models/learn_brand_voice_response'
|
|
150
|
+
require 'postboost/models/learn_brand_voice_response_meta'
|
|
151
|
+
require 'postboost/models/list_account_groups200_response'
|
|
80
152
|
require 'postboost/models/list_accounts200_response'
|
|
153
|
+
require 'postboost/models/list_agent_proposals200_response'
|
|
154
|
+
require 'postboost/models/list_agent_runs200_response'
|
|
155
|
+
require 'postboost/models/list_agents200_response'
|
|
156
|
+
require 'postboost/models/list_api_activity200_response'
|
|
157
|
+
require 'postboost/models/list_api_keys200_response'
|
|
158
|
+
require 'postboost/models/list_competitors200_response'
|
|
159
|
+
require 'postboost/models/list_hashtag_groups200_response'
|
|
160
|
+
require 'postboost/models/list_inbox_conversations200_response'
|
|
161
|
+
require 'postboost/models/list_inbox_reply_drafts200_response'
|
|
81
162
|
require 'postboost/models/list_media200_response'
|
|
82
163
|
require 'postboost/models/list_media_folders200_response'
|
|
83
164
|
require 'postboost/models/list_mentions200_response'
|
|
84
165
|
require 'postboost/models/list_my_workspaces200_response'
|
|
85
166
|
require 'postboost/models/list_posts200_response'
|
|
86
167
|
require 'postboost/models/list_receipts200_response'
|
|
168
|
+
require 'postboost/models/list_recycling_rules200_response'
|
|
169
|
+
require 'postboost/models/list_recycling_runs200_response'
|
|
170
|
+
require 'postboost/models/list_report_exports200_response'
|
|
171
|
+
require 'postboost/models/list_reseller_clients200_response'
|
|
172
|
+
require 'postboost/models/list_rss_feeds200_response'
|
|
87
173
|
require 'postboost/models/list_tags200_response'
|
|
174
|
+
require 'postboost/models/list_templates200_response'
|
|
88
175
|
require 'postboost/models/list_users200_response'
|
|
176
|
+
require 'postboost/models/list_webhook_subscriptions200_response'
|
|
89
177
|
require 'postboost/models/list_workspaces200_response'
|
|
90
178
|
require 'postboost/models/media'
|
|
179
|
+
require 'postboost/models/media_base64_input'
|
|
91
180
|
require 'postboost/models/media_folder'
|
|
92
181
|
require 'postboost/models/media_folder_input'
|
|
93
182
|
require 'postboost/models/media_folder_ref'
|
|
@@ -95,29 +184,66 @@ require 'postboost/models/mention'
|
|
|
95
184
|
require 'postboost/models/mention_identity'
|
|
96
185
|
require 'postboost/models/mention_identity_input'
|
|
97
186
|
require 'postboost/models/mention_input'
|
|
187
|
+
require 'postboost/models/message_only'
|
|
98
188
|
require 'postboost/models/pagination_meta'
|
|
99
189
|
require 'postboost/models/pagination_meta_links'
|
|
100
190
|
require 'postboost/models/pagination_meta_meta'
|
|
191
|
+
require 'postboost/models/poll_rss_feed200_response'
|
|
101
192
|
require 'postboost/models/post'
|
|
102
193
|
require 'postboost/models/post_analytics'
|
|
103
194
|
require 'postboost/models/post_content'
|
|
104
195
|
require 'postboost/models/post_input'
|
|
196
|
+
require 'postboost/models/post_options_instagram'
|
|
197
|
+
require 'postboost/models/post_options_tik_tok'
|
|
198
|
+
require 'postboost/models/post_options_youtube'
|
|
105
199
|
require 'postboost/models/post_status'
|
|
106
200
|
require 'postboost/models/post_version'
|
|
201
|
+
require 'postboost/models/post_version_options'
|
|
202
|
+
require 'postboost/models/posting_schedule'
|
|
203
|
+
require 'postboost/models/posting_schedule_day'
|
|
204
|
+
require 'postboost/models/posting_schedule_day_times_inner'
|
|
205
|
+
require 'postboost/models/posting_schedule_input'
|
|
107
206
|
require 'postboost/models/posting_time_slot'
|
|
108
207
|
require 'postboost/models/posting_times'
|
|
109
208
|
require 'postboost/models/posting_times_best_inner'
|
|
110
209
|
require 'postboost/models/posting_times_day_intervals_inner_inner'
|
|
111
210
|
require 'postboost/models/posting_times_days_inner'
|
|
211
|
+
require 'postboost/models/preflight_result'
|
|
112
212
|
require 'postboost/models/public_workspace'
|
|
113
213
|
require 'postboost/models/public_workspace_pivot'
|
|
114
214
|
require 'postboost/models/publish_progress'
|
|
215
|
+
require 'postboost/models/queue_slots'
|
|
115
216
|
require 'postboost/models/receipt'
|
|
116
217
|
require 'postboost/models/receipt_input'
|
|
117
218
|
require 'postboost/models/receipt_update_input'
|
|
219
|
+
require 'postboost/models/recommended_posting_times'
|
|
220
|
+
require 'postboost/models/reconnect_link'
|
|
221
|
+
require 'postboost/models/recycling_rule'
|
|
222
|
+
require 'postboost/models/recycling_rule_input'
|
|
223
|
+
require 'postboost/models/recycling_rule_settings'
|
|
224
|
+
require 'postboost/models/recycling_rule_update'
|
|
225
|
+
require 'postboost/models/recycling_run'
|
|
118
226
|
require 'postboost/models/remove_generic_subscription422_response'
|
|
119
227
|
require 'postboost/models/remove_user_from_workspace_request'
|
|
228
|
+
require 'postboost/models/report_branding'
|
|
229
|
+
require 'postboost/models/report_branding_input'
|
|
230
|
+
require 'postboost/models/report_export'
|
|
231
|
+
require 'postboost/models/report_export_input'
|
|
232
|
+
require 'postboost/models/repurpose_content200_response'
|
|
233
|
+
require 'postboost/models/repurpose_input'
|
|
234
|
+
require 'postboost/models/repurpose_input_theme'
|
|
235
|
+
require 'postboost/models/repurpose_result'
|
|
236
|
+
require 'postboost/models/repurpose_result_media'
|
|
237
|
+
require 'postboost/models/repurpose_result_source'
|
|
238
|
+
require 'postboost/models/repurpose_slide'
|
|
239
|
+
require 'postboost/models/reseller_client'
|
|
240
|
+
require 'postboost/models/reseller_client_input'
|
|
241
|
+
require 'postboost/models/reseller_client_usage'
|
|
120
242
|
require 'postboost/models/retry_post_account_result'
|
|
243
|
+
require 'postboost/models/rss_feed'
|
|
244
|
+
require 'postboost/models/rss_feed_input'
|
|
245
|
+
require 'postboost/models/rss_feed_update'
|
|
246
|
+
require 'postboost/models/run_agent202_response'
|
|
121
247
|
require 'postboost/models/schedule_post_request'
|
|
122
248
|
require 'postboost/models/schedule_result'
|
|
123
249
|
require 'postboost/models/subscription'
|
|
@@ -126,26 +252,49 @@ require 'postboost/models/subscription_status'
|
|
|
126
252
|
require 'postboost/models/subscription_update_input'
|
|
127
253
|
require 'postboost/models/tag'
|
|
128
254
|
require 'postboost/models/tag_input'
|
|
255
|
+
require 'postboost/models/template'
|
|
256
|
+
require 'postboost/models/template_content_item'
|
|
257
|
+
require 'postboost/models/template_input'
|
|
258
|
+
require 'postboost/models/template_input_content_inner'
|
|
129
259
|
require 'postboost/models/update_media_request'
|
|
130
260
|
require 'postboost/models/upload_chunk201_response'
|
|
131
261
|
require 'postboost/models/user'
|
|
132
262
|
require 'postboost/models/user_input'
|
|
133
263
|
require 'postboost/models/user_update_input'
|
|
264
|
+
require 'postboost/models/webhook_event_name'
|
|
265
|
+
require 'postboost/models/webhook_event_payload'
|
|
266
|
+
require 'postboost/models/webhook_subscription'
|
|
267
|
+
require 'postboost/models/webhook_subscription_input'
|
|
134
268
|
require 'postboost/models/workspace'
|
|
269
|
+
require 'postboost/models/workspace_agent'
|
|
270
|
+
require 'postboost/models/workspace_agent_input'
|
|
271
|
+
require 'postboost/models/workspace_agent_settings'
|
|
272
|
+
require 'postboost/models/workspace_agent_update'
|
|
135
273
|
require 'postboost/models/workspace_input'
|
|
136
274
|
require 'postboost/models/workspace_user_input'
|
|
275
|
+
require 'postboost/models/x_usage'
|
|
276
|
+
require 'postboost/models/x_usage_counter'
|
|
137
277
|
|
|
138
278
|
# APIs
|
|
139
279
|
require 'postboost/api/ai_api'
|
|
280
|
+
require 'postboost/api/account_groups_api'
|
|
140
281
|
require 'postboost/api/accounts_api'
|
|
282
|
+
require 'postboost/api/activity_api'
|
|
283
|
+
require 'postboost/api/agents_api'
|
|
141
284
|
require 'postboost/api/analytics_api'
|
|
285
|
+
require 'postboost/api/competitors_api'
|
|
286
|
+
require 'postboost/api/hashtag_groups_api'
|
|
287
|
+
require 'postboost/api/inbox_api'
|
|
142
288
|
require 'postboost/api/media_api'
|
|
143
289
|
require 'postboost/api/mentions_api'
|
|
290
|
+
require 'postboost/api/posting_schedule_api'
|
|
144
291
|
require 'postboost/api/posts_api'
|
|
145
292
|
require 'postboost/api/receipts_api'
|
|
146
293
|
require 'postboost/api/subscriptions_api'
|
|
147
294
|
require 'postboost/api/tags_api'
|
|
295
|
+
require 'postboost/api/templates_api'
|
|
148
296
|
require 'postboost/api/users_api'
|
|
297
|
+
require 'postboost/api/webhooks_api'
|
|
149
298
|
require 'postboost/api/workspaces_api'
|
|
150
299
|
|
|
151
300
|
module PostBoost
|
data/postboost.gemspec
CHANGED
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
=begin
|
|
4
4
|
#PostBoost API
|
|
5
5
|
|
|
6
|
-
#The PostBoost REST API lets you publish, schedule, and analyze social media posts across 12+ platforms from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace's plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request's `timezone` when one is given, otherwise in the workspace timezone. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
|
|
6
|
+
#The PostBoost REST API lets you publish, schedule, and analyze social media posts across 12+ platforms from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace's plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request's `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account's daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document: 1.
|
|
8
|
+
The version of the OpenAPI document: 1.14.0
|
|
9
9
|
Contact: hi@postboost.co
|
|
10
10
|
Generated by: https://openapi-generator.tech
|
|
11
11
|
Generator version: 7.9.0
|
|
@@ -23,7 +23,7 @@ Gem::Specification.new do |s|
|
|
|
23
23
|
s.email = ["hi@postboost.co"]
|
|
24
24
|
s.homepage = "https://openapi-generator.tech"
|
|
25
25
|
s.summary = "PostBoost API Ruby Gem"
|
|
26
|
-
s.description = "The PostBoost REST API lets you publish, schedule, and analyze social media posts across 12+ platforms from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace's plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request's `timezone` when one is given, otherwise in the workspace timezone. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ``` "
|
|
26
|
+
s.description = "The PostBoost REST API lets you publish, schedule, and analyze social media posts across 12+ platforms from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace's plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request's `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account's daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ``` "
|
|
27
27
|
s.license = "Unlicense"
|
|
28
28
|
s.required_ruby_version = ">= 2.7"
|
|
29
29
|
s.metadata = {}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
=begin
|
|
2
|
+
#PostBoost API
|
|
3
|
+
|
|
4
|
+
#The PostBoost REST API lets you publish, schedule, and analyze social media posts across 12+ platforms from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace's plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request's `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account's daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
|
|
5
|
+
|
|
6
|
+
The version of the OpenAPI document: 1.14.0
|
|
7
|
+
Contact: hi@postboost.co
|
|
8
|
+
Generated by: https://openapi-generator.tech
|
|
9
|
+
Generator version: 7.9.0
|
|
10
|
+
|
|
11
|
+
=end
|
|
12
|
+
|
|
13
|
+
require 'spec_helper'
|
|
14
|
+
require 'json'
|
|
15
|
+
|
|
16
|
+
# Unit tests for PostBoost::AccountGroupsApi
|
|
17
|
+
# Automatically generated by openapi-generator (https://openapi-generator.tech)
|
|
18
|
+
# Please update as you see appropriate
|
|
19
|
+
describe 'AccountGroupsApi' do
|
|
20
|
+
before do
|
|
21
|
+
# run before each test
|
|
22
|
+
@api_instance = PostBoost::AccountGroupsApi.new
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
after do
|
|
26
|
+
# run after each test
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
describe 'test an instance of AccountGroupsApi' do
|
|
30
|
+
it 'should create an instance of AccountGroupsApi' do
|
|
31
|
+
expect(@api_instance).to be_instance_of(PostBoost::AccountGroupsApi)
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
# unit tests for create_account_group
|
|
36
|
+
# Create an account group
|
|
37
|
+
# Creates a named set of accounts of this workspace. Admins and members only (not viewers).
|
|
38
|
+
# @param workspace_uuid UUID of the workspace.
|
|
39
|
+
# @param account_group_input
|
|
40
|
+
# @param [Hash] opts the optional parameters
|
|
41
|
+
# @return [CreateAccountGroup201Response]
|
|
42
|
+
describe 'create_account_group test' do
|
|
43
|
+
it 'should work' do
|
|
44
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
# unit tests for delete_account_group
|
|
49
|
+
# Delete an account group
|
|
50
|
+
# Deletes the group, not its accounts. Admins and members only (not viewers).
|
|
51
|
+
# @param workspace_uuid UUID of the workspace.
|
|
52
|
+
# @param account_group_uuid The account group `uuid`.
|
|
53
|
+
# @param [Hash] opts the optional parameters
|
|
54
|
+
# @return [nil]
|
|
55
|
+
describe 'delete_account_group test' do
|
|
56
|
+
it 'should work' do
|
|
57
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
58
|
+
end
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
# unit tests for get_account_group
|
|
62
|
+
# Get an account group
|
|
63
|
+
# One account group.
|
|
64
|
+
# @param workspace_uuid UUID of the workspace.
|
|
65
|
+
# @param account_group_uuid The account group `uuid`.
|
|
66
|
+
# @param [Hash] opts the optional parameters
|
|
67
|
+
# @return [CreateAccountGroup201Response]
|
|
68
|
+
describe 'get_account_group test' do
|
|
69
|
+
it 'should work' do
|
|
70
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
71
|
+
end
|
|
72
|
+
end
|
|
73
|
+
|
|
74
|
+
# unit tests for list_account_groups
|
|
75
|
+
# List account groups
|
|
76
|
+
# Named sets of accounts, sorted by name, with their account ids. Pass `account_ids` as `accounts` when you create a post to publish to the whole group. Paginated with `page` and `per_page` (default 100). A key limited to some accounts only sees groups whose accounts are all among its accounts, and `meta.total` counts only those.
|
|
77
|
+
# @param workspace_uuid UUID of the workspace.
|
|
78
|
+
# @param [Hash] opts the optional parameters
|
|
79
|
+
# @option opts [Integer] :page Page number (1-based).
|
|
80
|
+
# @option opts [Integer] :per_page Items per page, 1-100.
|
|
81
|
+
# @return [ListAccountGroups200Response]
|
|
82
|
+
describe 'list_account_groups test' do
|
|
83
|
+
it 'should work' do
|
|
84
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
85
|
+
end
|
|
86
|
+
end
|
|
87
|
+
|
|
88
|
+
# unit tests for update_account_group
|
|
89
|
+
# Update an account group
|
|
90
|
+
# Replaces the name and the accounts of the group (accounts you leave out are removed). Admins and members only (not viewers).
|
|
91
|
+
# @param workspace_uuid UUID of the workspace.
|
|
92
|
+
# @param account_group_uuid The account group `uuid`.
|
|
93
|
+
# @param account_group_input
|
|
94
|
+
# @param [Hash] opts the optional parameters
|
|
95
|
+
# @return [CreateAccountGroup201Response]
|
|
96
|
+
describe 'update_account_group test' do
|
|
97
|
+
it 'should work' do
|
|
98
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
99
|
+
end
|
|
100
|
+
end
|
|
101
|
+
|
|
102
|
+
end
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
=begin
|
|
2
2
|
#PostBoost API
|
|
3
3
|
|
|
4
|
-
#The PostBoost REST API lets you publish, schedule, and analyze social media posts across 12+ platforms from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace's plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request's `timezone` when one is given, otherwise in the workspace timezone. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
|
|
4
|
+
#The PostBoost REST API lets you publish, schedule, and analyze social media posts across 12+ platforms from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace's plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request's `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account's daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
|
|
5
5
|
|
|
6
|
-
The version of the OpenAPI document: 1.
|
|
6
|
+
The version of the OpenAPI document: 1.14.0
|
|
7
7
|
Contact: hi@postboost.co
|
|
8
8
|
Generated by: https://openapi-generator.tech
|
|
9
9
|
Generator version: 7.9.0
|
|
@@ -32,6 +32,33 @@ describe 'AccountsApi' do
|
|
|
32
32
|
end
|
|
33
33
|
end
|
|
34
34
|
|
|
35
|
+
# unit tests for connect_channel
|
|
36
|
+
# Connect a Telegram, Discord or Slack channel
|
|
37
|
+
# Connects a channel that uses a bot token or a webhook URL instead of a login. The credentials are checked against the network first, stored encrypted and never returned. Connecting the same channel again updates it (`200`) instead of adding a second account. Workspace admins only; counts toward the plan's social account limit. - **telegram**: `bot_token` from @BotFather and `chat` (the channel's `@username`, or its numeric id such as `-1001234567890` for a private channel). The bot must be an administrator of the channel allowed to post messages. - **discord**: `webhook_url` from Channel settings → Integrations → Webhooks (`https://discord.com/api/webhooks/…`). - **slack**: `webhook_url` of an incoming webhook (`https://hooks.slack.com/services/…`) and an optional display `name`. Slack posts cannot be deleted from PostBoost, and images must be publicly reachable. Webhook URLs on any other host are refused (`422`) before any request is made.
|
|
38
|
+
# @param workspace_uuid UUID of the workspace.
|
|
39
|
+
# @param provider
|
|
40
|
+
# @param connect_channel_input
|
|
41
|
+
# @param [Hash] opts the optional parameters
|
|
42
|
+
# @return [ChannelAccount]
|
|
43
|
+
describe 'connect_channel test' do
|
|
44
|
+
it 'should work' do
|
|
45
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
# unit tests for create_reconnect_link
|
|
50
|
+
# Create a reconnect link
|
|
51
|
+
# Creates a single-use link (valid 7 days) that lets someone without a PostBoost login, such as an agency's client, re-authorize this one account on its network. The link only refreshes the connection of this account; signing in as a different profile or page changes nothing. Workspace admins only. Available for Facebook Pages, Instagram, Threads, LinkedIn, TikTok, YouTube and Pinterest. Returns `404` while the feature is not enabled on this instance.
|
|
52
|
+
# @param workspace_uuid UUID of the workspace.
|
|
53
|
+
# @param account_uuid UUID of the social media account.
|
|
54
|
+
# @param [Hash] opts the optional parameters
|
|
55
|
+
# @return [ReconnectLink]
|
|
56
|
+
describe 'create_reconnect_link test' do
|
|
57
|
+
it 'should work' do
|
|
58
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
59
|
+
end
|
|
60
|
+
end
|
|
61
|
+
|
|
35
62
|
# unit tests for get_account
|
|
36
63
|
# Get account
|
|
37
64
|
# Returns a single social media account.
|
|
@@ -45,6 +72,18 @@ describe 'AccountsApi' do
|
|
|
45
72
|
end
|
|
46
73
|
end
|
|
47
74
|
|
|
75
|
+
# unit tests for get_account_health
|
|
76
|
+
# Account health
|
|
77
|
+
# Pre-flight health of every account in the workspace: whether it is authorized and holds an access token, how much of its daily post cap (per UTC day, scheduled, awaiting approval and published posts) is used today, and its connection health: predicted token expiry, latest publish outcome and where to reconnect it. The `account.token_expiring` and `account.disconnected` webhooks report changes as they happen.
|
|
78
|
+
# @param workspace_uuid UUID of the workspace.
|
|
79
|
+
# @param [Hash] opts the optional parameters
|
|
80
|
+
# @return [GetAccountHealth200Response]
|
|
81
|
+
describe 'get_account_health test' do
|
|
82
|
+
it 'should work' do
|
|
83
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
84
|
+
end
|
|
85
|
+
end
|
|
86
|
+
|
|
48
87
|
# unit tests for list_accounts
|
|
49
88
|
# List accounts
|
|
50
89
|
# Returns all social media accounts connected to the workspace, newest first. Optional filters narrow the list.
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
=begin
|
|
2
|
+
#PostBoost API
|
|
3
|
+
|
|
4
|
+
#The PostBoost REST API lets you publish, schedule, and analyze social media posts across 12+ platforms from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Plan access Every workspace-scoped endpoint returns `403` when the workspace's plan does not include API access (capability `api`). ## Dates and times Post dates and times (`date`, `time`, `accounts_schedule`) are read in the request's `timezone` when one is given, otherwise in the workspace timezone. ## Idempotent requests Send an `Idempotency-Key` header (any unique string, for example a UUID) with a `POST`. Repeating the request with the same key within 24 hours returns the stored response with `Idempotent-Replayed: true` and creates nothing new. Reusing a key with a different body returns `422`; a request still in progress with the same key returns `409`. `5xx` and `429` responses are not stored, so they can be retried with the same key. ## Guardrails for automated clients Create and update requests are checked before anything is written: a post whose content matches one created for the same account in the last 24 hours returns `409` (`code: duplicate_post`, override with `allow_duplicate: true`), scheduling past an account's daily cap returns `429` (`code: account_daily_cap_reached`), and scheduling to an account that must be reconnected returns `422` (`code: account_unauthorized` or `account_token_missing`). Use `POST /{workspaceUuid}/posts/validate` for a dry run and `GET /{workspaceUuid}/activity` to review what API clients did. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
|
|
5
|
+
|
|
6
|
+
The version of the OpenAPI document: 1.14.0
|
|
7
|
+
Contact: hi@postboost.co
|
|
8
|
+
Generated by: https://openapi-generator.tech
|
|
9
|
+
Generator version: 7.9.0
|
|
10
|
+
|
|
11
|
+
=end
|
|
12
|
+
|
|
13
|
+
require 'spec_helper'
|
|
14
|
+
require 'json'
|
|
15
|
+
|
|
16
|
+
# Unit tests for PostBoost::ActivityApi
|
|
17
|
+
# Automatically generated by openapi-generator (https://openapi-generator.tech)
|
|
18
|
+
# Please update as you see appropriate
|
|
19
|
+
describe 'ActivityApi' do
|
|
20
|
+
before do
|
|
21
|
+
# run before each test
|
|
22
|
+
@api_instance = PostBoost::ActivityApi.new
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
after do
|
|
26
|
+
# run after each test
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
describe 'test an instance of ActivityApi' do
|
|
30
|
+
it 'should create an instance of ActivityApi' do
|
|
31
|
+
expect(@api_instance).to be_instance_of(PostBoost::ActivityApi)
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
# unit tests for list_api_activity
|
|
36
|
+
# List API activity
|
|
37
|
+
# Every write request (`POST`, `PUT`, `DELETE`) made through the API in this workspace, newest first, with the client that made it and its outcome. Kept for 90 days. Send an `X-PostBoost-Client` header (for example `my-agent/1.2`) to label your requests; otherwise the `User-Agent` is recorded.
|
|
38
|
+
# @param workspace_uuid UUID of the workspace.
|
|
39
|
+
# @param [Hash] opts the optional parameters
|
|
40
|
+
# @option opts [ApiActivityOutcome] :outcome
|
|
41
|
+
# @option opts [String] :client Client label prefix, for example `mcp`.
|
|
42
|
+
# @option opts [Time] :since Only entries at or after this time (UTC).
|
|
43
|
+
# @option opts [Integer] :page
|
|
44
|
+
# @return [ListApiActivity200Response]
|
|
45
|
+
describe 'list_api_activity test' do
|
|
46
|
+
it 'should work' do
|
|
47
|
+
# assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
|
|
48
|
+
end
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
end
|