Scheduled Action: Edit or delete scheduled posts programmatically Modify or remove queued/draft posts that already live in Statuz. Perfect for automation workflows that need to tweak dates, text, attachments, or accounts without opening the app UI. Syntax statuz://scheduled?action={edit|delete}&id={post-id}&[parameters] • action=edit — Update an existing scheduled post. • action=delete — Remove a scheduled post entirely. ⚠️ Published posts cannot be edited or deleted via this endpoint. Only draft, queued, processing, or failed posts are eligible. Shared Parameters ParameterTypeRequiredDescription actionstringYesedit or delete idstringYesScheduled post UUID stealthModebooleanNotrue deletes/edits silently, false shows UI (default: false) Edit Parameters ParameterTypeDescription textstringReplace single-post content threadstring (JSON array)Replace entire thread (URL-encode the JSON) threadOpsstring (JSON array)Granular operations: append, insert, replace, delete dateISO8601New scheduled date/time timezonestringNew timezone (IANA format) platformsstringComma-separated platforms (x,bluesky,mastodon) statusstringdraft or queued accountsstring/JSONdefault, all, or per-platform JSON map autosplitbooleanAuto-split long posts into a thread mediastringComma-separated file paths/URLs (max 4 attachments) filesstringAlias for media when passing raw absolute paths quotestringURL/ID of post to quote • Provide either thread or threadOps. When both are included, thread wins. • accounts JSON should be URL-encoded (jq -sRr @uri) before injecting. • Attachments accept local paths, file:// URLs, or remote HTTP/HTTPS resources. Supported formats: images (PNG, JPG, GIF) and videos (MP4, MOV). Examples Edit Text Silently POST_ID="550e8400-e29b-41d4-a716-446655440000" TEXT=$(printf %s "Updated copy with #launch" | jq -sRr @uri) open "statuz://scheduled?action=edit&id=$POST_ID&text=$TEXT&stealthMode=true" Change Date & Timezone POST_ID="550e8400-e29b-41d4-a716-446655440000" open "statuz://scheduled?action=edit&id=$POST_ID&date=2025-01-21T14:00:00&timezone=America/New_York" Replace Entire Thread POST_ID="550e8400-e29b-41d4-a716-446655440000" THREAD=$(printf '["Intro","Deep dive","CTA"]' | jq -sRr @uri) open "statuz://scheduled?action=edit&id=$POST_ID&thread=$THREAD&status=queued" Granular Thread Operation POST_ID="550e8400-e29b-41d4-a716-446655440000" OPS=$(printf '[{"op":"append","text":"New closing post"}]' | jq -sRr @uri) open "statuz://scheduled?action=edit&id=$POST_ID&threadOps=$OPS" Delete with Confirmation Dialog open "statuz://scheduled?action=delete&id=550e8400-e29b-41d4-a716-446655440000&stealthMode=false" Tips • Run scheduled_list via MCP (or the built-in calendar) to find valid post IDs before editing. • Use stealthMode=true for unattended automation; set to false when you want to review changes in the UI. • URL-encode any JSON payloads (thread, threadOps, accounts) to avoid malformed URLs. • Combine with Shortcuts, Raycast, Hazel, or cron jobs to maintain a zero-click content pipeline. Try Statuz today, it's free. Download for macOS (/download)