Publish to Facebook / Instagram
publish_to_channelsPublish (or schedule) a post to connected Facebook Pages and Instagram Business accounts from list_channels. Media must be public https URLs (use upload_media / create_upload_link first). Facebook: text, text+link, 1-10 images, or one video. Instagram: needs media - 1 image, a carousel of 2-10 images, or one video (published as a Reel); caption max 2200 chars and 30 hashtags. Omit scheduled_at to publish now and get per-channel permalinks back; pass it to schedule. To also post on LinkedIn, use schedule_post with channel_ids instead. SAFETY: this never publishes or schedules by itself. It returns status 'awaiting_confirmation' and a confirmation link; nothing goes live until the user opens the link and ticks each account (all unticked by default). Always tell the user to open the link and tick the accounts. Never treat 'all accounts' as a blanket instruction — list every account you requested by name so the user can check them. You cannot confirm on the user's behalf.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| link | No | Optional link attached to Facebook text posts. | |
| text | Yes | Post copy / caption. | |
| media_urls | No | Public image/video URLs. Several images = carousel; one video = video/Reel. | |
| channel_ids | Yes | Channel ids from list_channels. | |
| scheduled_at | No | ISO 8601 datetime to publish at, e.g. 2026-09-30T09:00:00Z. Omit to publish now. | |
| text_overrides | No | Optional per-channel copy: { channel_id: text }. |