Skip to main content

integrationList

List all connected social media accounts (channels) for your organization. Parameters: Returns:

groupList

List all groups (customers) for your organization. Use a group’s id with integrationList to filter channels down to a single group. Parameters: None Returns:

integrationSchema

Get the posting rules, character limits, required settings, and available helper tools for a specific platform. Call this before scheduling a post to understand what the platform expects. Parameters: Returns: The tools array contains helper functions specific to the platform. For example, Discord returns a tool to list available channels, Reddit returns a tool to search for subreddits, and LinkedIn Page returns a tool to list pages. Each tool in the array has:

triggerTool

Execute a platform-specific helper function. These are discovered through integrationSchema and are used to fetch dynamic data like channel lists, subreddit suggestions, or page IDs. Parameters: Each item in dataSchema: Example use cases:
  • Get the list of Discord channels for a server
  • Search for Reddit subreddits
  • List LinkedIn pages you manage
  • Get Facebook page options
  • Search Instagram audio (audioSearch) to attach to a Reel — only on Facebook Business-linked Instagram channels

schedulePostTool

Schedule, draft, or immediately publish posts to social media platforms. This is the main tool for creating content. Parameters: Each item in socialPost: Each item in postsAndComments: Each item in settings:

Content Formatting

Content must be HTML with these allowed tags only:
You cannot combine <u> and <strong> in the same element. Each line of text must be wrapped in <p> tags.

Posts vs Comments

The postsAndComments array behavior depends on the platform:
  • Thread-based platforms (X, Threads, Bluesky): Each array item becomes a separate post in a thread
  • Comment-based platforms (LinkedIn, Facebook): First item is the post, remaining items are comments

Multiple Posts

To schedule multiple posts (e.g., 20 posts across different days), add multiple items to the socialPost array — each with its own date and integrationId. Returns: If validation fails, returns { errors: string } with details about what went wrong (e.g., content exceeds character limit).

postsListTool

List the organization’s posts scheduled between two dates. It returns the same posts as the List Posts API endpoint, but with the channel details flattened into integrationId, platform, and integrationName fields instead of the API’s nested integration object. Each item includes the post’s current provider settings. Parameters: Returns: An object with a posts array. Each item has:

postSettingsTool

Update only the provider settings of a not-yet-published post (scheduled or draft). Merges the given keys into the post’s existing settings. Content and publish date are unchanged. Parameters: Each item in settings: Returns: If the update fails, returns { errors: string } with details (e.g., post not found, already published, a comment id was passed instead of the root post, or the merged settings failed validation).

generateImageTool

Generate an AI image to use as a post attachment. Parameters: Returns: Use the returned path in the attachments array when scheduling a post.

generateVideoOptions

List all available video generation types and their required parameters. Parameters: None Returns: An array of video generators, each with:

Available Video Types


videoFunctionTool

Execute helper functions for video generators. Use this to fetch required data before generating a video (e.g., listing available voices). Parameters: Example: Call with identifier: "image-text-slides" and functionName: "loadVoices" to get available ElevenLabs voice IDs.

generateVideoTool

Generate a video to use as a post attachment. Parameters: Each item in customParams: Returns: Use the returned url in the attachments array when scheduling a post.