Skip to main content

Creating Posts

Use posts:create to schedule or draft posts to one or more platforms.

Simple Post

postiz posts:create \
  -c "Hello world!" \
  -s "2025-01-15T10:00:00Z" \
  -i "your-integration-id"

Options

FlagDescription
-c, --contentPost content. Use multiple times for threads/comments.
-s, --dateSchedule date in ISO 8601 format (required)
-t, --typeschedule (default) or draft
-m, --mediaComma-separated media URLs (use after uploading)
-i, --integrationsComma-separated integration IDs (required)
-d, --delayDelay between comments in milliseconds (default: 5000)
--settingsPlatform-specific settings as JSON
-j, --jsonPath to a JSON file for complex posts

Draft Post

postiz posts:create \
  -c "Review this before publishing" \
  -s "2025-01-15T10:00:00Z" \
  -t draft \
  -i "your-integration-id"

Post with Media

Upload your media first with the upload command, then reference the returned URL:
postiz posts:create \
  -c "Check out this photo!" \
  -m "https://uploads.postiz.com/your-image.jpg" \
  -s "2025-01-15T10:00:00Z" \
  -i "your-integration-id"

Threads and Comments

Pass -c multiple times to create a thread. Each comment can have its own media with a corresponding -m flag:
postiz posts:create \
  -c "Thread 1/3" -m "image1.jpg" \
  -c "Thread 2/3" -m "image2.jpg" \
  -c "Thread 3/3" \
  -s "2025-01-15T10:00:00Z" \
  -i "twitter-integration-id"
Use -d to control the delay between comments (in milliseconds):
postiz posts:create \
  -c "First tweet" \
  -c "Second tweet" \
  -c "Third tweet" \
  -s "2025-01-15T10:00:00Z" \
  -d 2000 \
  -i "twitter-integration-id"

Multi-Platform Post

Send the same content to multiple platforms by passing comma-separated integration IDs:
postiz posts:create \
  -c "Posting everywhere!" \
  -s "2025-01-15T10:00:00Z" \
  -i "twitter-id,linkedin-id,facebook-id"

Platform-Specific Settings

Some platforms require additional settings. Pass them as JSON with --settings:
postiz posts:create \
  -c "Check out this discussion" \
  -s "2025-01-15T10:00:00Z" \
  --settings '{"subreddit":[{"value":{"subreddit":"programming","title":"My Post","type":"text"}}]}' \
  -i "reddit-integration-id"
Use postiz integrations:settings <id> to discover what settings are available for each platform. See Integrations for details.

Complex Posts with JSON

For posts with detailed platform-specific content, use a JSON file:
postiz posts:create --json post.json
Example post.json:
{
  "integrations": ["twitter-123", "linkedin-456"],
  "posts": [
    {
      "provider": "twitter",
      "post": [{ "content": "Short tweet version", "image": [] }]
    },
    {
      "provider": "linkedin",
      "post": [{ "content": "Longer LinkedIn version with more detail", "image": [] }],
      "settings": { "__type": "linkedin" }
    }
  ]
}

Listing Posts

postiz posts:list

Filter by Date Range

postiz posts:list \
  --startDate "2025-01-01T00:00:00Z" \
  --endDate "2025-01-31T23:59:59Z"

Filter by Customer

postiz posts:list --customer "customer-id"

Deleting Posts

postiz posts:delete <post-id>