Scheduling

Schedule a post

sfeed post "content" --at "2026-04-01T09:00:00Z"

The post is sent to the sfeed cloud scheduler, which checks for due posts every minute and fires them using your stored tokens.

How it works

Facebook: uses native scheduling through the Facebook API. The post is sent directly to Facebook with a scheduled_publish_time parameter. Precise timing.

Instagram: stored in the sfeed cloud scheduler (Cloudflare D1 database). A Cron Trigger checks every minute for due posts. Your tokens (stored during sfeed auth) are used to publish.

List scheduled posts

sfeed schedule list

Cancel a scheduled post

sfeed schedule cancel <id>

What's stored server-side

When you schedule a post, the following is sent to the sfeed server:

Your tokens are already stored server-side from when you ran sfeed auth facebook.

Local scheduling (self-hosted)

If you're self-hosting (using your own Facebook App credentials), scheduling uses a local daemon instead of the cloud:

sfeed daemon

This checks ~/.sfeed/schedule.json every 30 seconds and fires due posts. You need to keep it running for scheduled posts to work.

Back to Docs