Posts
Create, schedule, publish, update, retry, and delete posts from the CLI. Channel IDs come from accounts:list.
Create a post
# Schedule
verlynk posts:create -c "Hello from Verlynk!" -i "<channel-id>" -d "2026-07-15T09:00:00.000Z"
# Draft
verlynk posts:create -c "Draft content" -i "<channel-id>" -d "2026-07-15T09:00:00.000Z" -t draft
# Publish now
verlynk posts:create -c "We're live!" -i "<channel-id>" -t publish
# Multi-channel
verlynk posts:create -c "Launch day!" -i "id1,id2" -d "2026-07-20T14:00:00.000Z"
# From JSON file
verlynk posts:create --json ./post.json
posts:create options
| Flag | Description |
|---|---|
-c, --content | Post text / caption |
-i, --accounts | Comma-separated channel IDs from accounts:list |
-d, --date | Schedule datetime in ISO 8601 (required for schedule / draft) |
-t, --type | schedule (default), draft, or publish |
--timezone | IANA timezone (default UTC) |
--post-type | post, reel, story, video, thread, pin, offer, event |
--settings | Platform-specific settings as a JSON string |
-j, --json | Path to a full post payload JSON file |
--profile-id | Override profile for this command |
CLI action mapping:
schedule→ schedule oncedraft→ save as draftpublish→ publish now
note
Advanced actions such as QUEUE or NEEDS_APPROVAL are available via the --json payload path. See the API Reference.
List posts
Date range is required (max 40 days).
verlynk posts:list --from 2026-07-01 --to 2026-07-31
verlynk posts:list --from 2026-07-01 --to 2026-07-31 --status SCHEDULED
verlynk posts:list --from 2026-07-01 --to 2026-07-31 --platform linkedin --json
| Flag | Description |
|---|---|
--from | Start date (required) |
--to | End date (required) |
--status | Filter by status |
--platform | Filter by platform |
--profile-id | Override profile |
--channel-id | Filter by channel |
--json | Output raw JSON |
Get a post
verlynk posts:get <post-id>
verlynk posts:get <post-id> --profile-id <profile-uuid> --json
Update a post
verlynk posts:update <post-id> -c "Updated text" -i "<channel-id>" -d "2026-07-16T09:00:00.000Z"
verlynk posts:update <post-id> --json ./post.json
When not using --json, -i / --accounts accepts a single channel ID.
Retry a post
verlynk posts:retry <post-id>
verlynk posts:retry <post-id> --profile-id <profile-uuid>
Delete a post
verlynk posts:delete <post-id> --yes
warning
Delete requires --yes / -y.
Media upload
Media upload is not a CLI command. Presign and upload via the Public API, then pass the media URL in your post JSON. See the API Reference.
Next steps
- Drafts — List and manage draft posts
- Validate and usage — Check caption limits before publishing