# Publish social posts with Blotato

Source: https://opvs.ai/help/give-your-agents-skills/publish-social-posts-with-blotato

> Connect your Blotato API key in OPVS, install @opvs-ai/blotato, and have your AI employee publish or schedule social posts across ten platforms.

**Who this is for:** Workspace admins and content operators who want an OPVS AI employee to publish or schedule social posts across connected channels without logging into each platform manually.

**What this does:** Connects your Blotato API key in OPVS, equips an agent with `@opvs-ai/blotato`, and lets the agent look up your Pages or boards, publish or schedule posts across ten platforms, and check whether each post went live.

## Before you begin

- You are a workspace admin on `app.opvs.ai`.
- You have a Blotato account with your social channels already connected inside Blotato, and your Blotato API key ready.
- Your workspace has at least one AI employee, or you are ready to [install skills from the marketplace](https://opvs.ai/help/give-your-agents-skills/install-skills.md).

## Steps

1. Open **Settings → Integrations** in `app.opvs.ai`, choose **Blotato**, and paste your Blotato API key. Save the integration so OPVS routes `@opvs-ai/blotato` calls through your brand's own key.

1. Open **Skills** in the sidebar and search for **Blotato** (`@opvs-ai/blotato`), or follow [Find and download a skill from the skills store](https://opvs.ai/help/give-your-agents-skills/browse-the-skills-store.md). Click **Install**, review the package details, and complete the install flow for your workspace.

1. Assign `@opvs-ai/blotato` to the AI employee that handles your social publishing, or call it from your agent session.

1. Ask your agent to list your connected accounts first (`listAccounts`) so it picks the right `accountId` for each platform (`twitter`, `instagram`, `linkedin`, `facebook`, `tiktok`, `pinterest`, `threads`, `bluesky`, `youtube`, or `slack`). If you are posting to a Facebook Page, LinkedIn company Page, YouTube playlist, Slack channel, or Pinterest board, have it look up the destination ID first (`listSubaccounts` or `listPinterestBoards`).

1. Give the agent your finished post text, any media URLs, and whether to publish immediately, schedule at an ISO 8601 timestamp (`scheduledTime`), or queue into the next open Blotato slot (`useNextFreeSlot: true`).

## Verify it worked

Ask the agent to check the submission status (`getPostStatus`) using the `postSubmissionId` returned when the post was created:

- `published` — the post is live, and the response includes `publicUrl` when supplied by the platform.
- `scheduled` — the post is queued in Blotato for the requested `scheduledTime`.
- `in-progress` — Blotato is still processing the destination; wait at least 10 seconds and check again.
- `failed` — read `errorMessage` to see which platform field or account permission needs fixing.

## Troubleshoot

**Why did my LinkedIn post go to a personal profile instead of our company Page?** When `target.pageId` is omitted on LinkedIn, Blotato posts to the personal profile. Ask the agent to run `listSubaccounts` for your LinkedIn `accountId` and pass the company Page `id` as `target.pageId`.

**Why did Blotato reject my TikTok, YouTube, or Pinterest post?** Each platform requires specific `target` fields: TikTok requires privacy and disclosure flags, YouTube requires `title` and `privacyStatus`, and Pinterest requires `boardId` (from `listPinterestBoards`). Ask the agent to include the platform's required fields before submitting.

**Why does **`listAccounts`** return no accounts or fail with an auth error?** Check **Settings → Integrations** in `app.opvs.ai` to confirm your Blotato API key is saved, and confirm in Blotato that at least one social account is connected.

## Related

- [Install skills from the marketplace](https://opvs.ai/help/give-your-agents-skills/install-skills.md)
- [Find and download a skill from the skills store](https://opvs.ai/help/give-your-agents-skills/browse-the-skills-store.md)
- [Blotato API & skill reference](https://opvs.ai/docs/tools/blotato.md)
