integrationList
List all connected social media accounts (channels) for your organization. Parameters:
Returns:
Four fields and no more. The tool builds a richer row internally, but its declared output schema trims anything else before it leaves, so a channel’s group, its disabled flag and its profile never reach your client. Read those from
GET /integrations instead.
groupList
List all groups (customers) for your organization. Use a group’sid with integrationList to filter channels down to a single group.
Parameters: None
Returns:
integrationSchema
Get the posting rules, character limits, and required settings for a specific platform. The response also lists the platform’s helper tools. 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 Pinterest returns a tool to list boards.
Each tool in the array has:
triggerTool
Execute a platform-specific helper function. These are discovered throughintegrationSchema and are used to fetch dynamic data like channel lists, subreddit suggestions, or page IDs. Every tool each network offers is catalogued in Provider Tools.
Parameters:
Each item in
dataSchema:
Example use cases:
- Get the list of Discord channels for a server
- Search for Reddit subreddits
- List Pinterest boards
- List Slack channels
- Search Instagram audio (
audioSearch) to attach to a Reel (available only on Facebook Business-linked Instagram channels)
integrationSchedulePostTool
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:Posts vs Comments
ThepostsAndComments 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 thesocialPost array, each with its own date and integrationId.
Returns: An array of results, one per post in socialPost, each with:
If validation fails, returns
{ errors: string } with details about what went wrong (e.g., content exceeds character limit).
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.
uploadFromUrlTool
Upload a remote image or video into the media library from a public URL. Use this before scheduling a post when the user provides an external media URL that is not already hosted on your PostQueen domain, so the attachment passes the upload-domain validation. Parameters:
Returns:
On failure, returns
{ error: string } instead (for example, the URL could not be fetched, the file type is not allowed, or the file exceeds the size limit).
Allowed file types:
- Images: JPEG, PNG, GIF, WebP, AVIF, BMP, TIFF
- Video: MP4
path in the attachments array when scheduling a post.
generateVideoOptions
List all available video generation types and their required parameters. Parameters: None required (an optionalreasoning string is accepted).
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. Whatever your agent schedules with these tools lands on the calendar she publishes from, so you can still open it and change your mind.
ask_postqueen
The eleventh tool is not one of the ten above and does not look like them. Your client will discover it anyway, so it is worth knowing what it is.
It takes one parameter, message, a plain-language request. Behind it sits the same assistant you talk to in the app, running server-side with the same tools listed above and the same access to your calendar. So “ask her to schedule a launch post for Thursday” is a single call rather than a sequence your own agent has to plan.
Two things follow from that. It can write to your calendar, so treat it with the same care as
integrationSchedulePostTool. And because she plans the steps herself, you get less control over exactly which tools run than you would calling them directly.
What these tools cannot do
Some jobs have no tool here and need the CLI or the API alongside.ask_postqueen does not change this: it drives the same tools, so it has the same gaps. Reading analytics is one. Listing or deleting an existing post is another. Limits and Troubleshooting has the full list, the route to use instead of each gap, and what to check when your client says it cannot reach her at all.