create_post
Create a new social post as a draft or schedule it for automatic publishing. Use existing media from the library and specify target platforms.
Instructions
Create a new post as a draft or schedule it for automatic publishing. With status='draft' (or is_draft=true) the post is saved with no publish time; with scheduledFor set it is queued and publishes automatically at that time. Returns the created post object including its id. Media must already exist in the library — call import_media or list_media first to get a media id. The user must have connected each target platform (verify with list_social_accounts if unsure). To publish an existing draft immediately, use publish_post rather than creating a new post.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| status | No | Explicit lifecycle state. Overrides is_draft when both are passed. | |
| caption | No | The post text, used for all target platforms. Platform-specific length limits apply at publish time. | |
| is_draft | No | Convenience flag: true saves the post as a draft (status='draft'). False with scheduledFor set schedules it. | |
| mediaIds | No | Media library item ids for a multi-image carousel post, up to 10. Mutually exclusive with libraryItemId. Platform support for carousels varies. | |
| platforms | Yes | Platforms to publish to. Each must already be connected to the user's ViralNote account. | |
| scheduledFor | No | When to auto-publish, as an ISO 8601 UTC timestamp (e.g. 2026-07-10T09:00:00Z). Must be in the future. Required for scheduled posts; omit for drafts. | |
| libraryItemId | No | Id of one media library item to attach (from list_media or import_media). Mutually exclusive with mediaIds. |