This article presents possible use cases and corresponding sample flows that you can support. It provides a useful starting point as you plan your implementation.
The core flow: generate a plan for a site, then schedule its posts for publishing.
Prerequisite: The site must be published, and the social channels you want to publish to must be connected through the Publisher API.
To generate a plan and publish its posts:
status of GENERATING.status is ACTIVE. The response contains the plan's marketingActivities, and the near-term activities already include generated posts in their items.items whose status is DRAFT from the activities you want to publish.ScheduleDrafts only schedules drafts for channels the site has connected through the Publisher; drafts for unconnected channels are left as drafts.Before generating, configure the site's marketing preferences so the AI produces a plan that matches the brand's goal, voice, and channels.
To tailor and generate a plan:
status of GENERATING.status is ACTIVE. The generated activities and posts reflect the configured settings.Add an event, such as a seasonal sale or product launch, so the AI builds activities around it.
To plan around an event:
status of GENERATING.status is ACTIVE. The plan's activities account for the event.When a plan is generated, posts are created automatically only for the near-term activities. Use this flow to generate posts for the remaining activities and schedule them.
To generate and schedule more posts:
items whose status is DRAFT.ScheduleDrafts only schedules drafts for channels the site has connected through the Publisher; drafts for unconnected channels are left as drafts.An activity in the plan can carry a story alongside its posts. This flow covers finding that story and publishing every one of its frames.
To publish an activity's story:
type is STORY. Not every activity has one.id and the number of media items in its media list. Each media item is one frame.id. Each frame is published as its own story.A site owner likes a generated story but wants to swap out one of its images, without regenerating the rest.
To replace a single frame:
type is STORY.mediaUrl and mediaType, and that position as mediaIndex. The story's other frames are left unchanged.Last updated: 2 September 2026