Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/groniz/groniz-cli/llms.txt

Use this file to discover all available pages before exploring further.

By the end of this guide you will have the Groniz CLI installed, your account authenticated, a connected social channel identified, and your first scheduled post confirmed — all from the terminal in under five minutes.
1

Install the CLI

Run the one-line installer. It detects your OS and architecture, verifies the SHA-256 checksum, and places the binary at ~/.groniz/bin/groniz.
curl -fsSL https://groniz.com/install.sh | sh
No Node.js or package manager is required. Once the installer finishes, verify the binary is reachable:
groniz --help
You should see the top-level help listing every available command. If your shell cannot find the binary, open a new terminal tab or add ~/.groniz/bin to your PATH manually.
To update the CLI at any time run groniz update. Run groniz update --check to check for a newer version without installing it — the command exits with code 10 when an update is available, which is useful in CI scripts.
2

Authenticate

Every Groniz CLI command requires valid credentials. The fastest way to authenticate interactively is the OAuth2 device flow:
groniz auth login
The command prints a short one-time code and a URL. Open the URL in your browser, enter the code, and approve access. The CLI polls in the background and saves your credentials to ~/.groniz/credentials.json once you approve.Confirm authentication succeeded:
groniz whoami
{
  "id": "usr_01hx...",
  "email": "you@example.com",
  "name": "Your Name"
}
For CI pipelines or headless environments, use an API key instead of the device flow. See the Authentication page for details.
3

List your connected channels

Groniz routes posts through integrations — the social accounts you have connected in the Groniz Console. List yours to find the integration ID you will need in the next step:
groniz integrations list
The command returns a JSON array of your connected integrations:
[
  {
    "id": "int_01hx...",
    "name": "My LinkedIn Page",
    "platform": "linkedin",
    "status": "active"
  },
  {
    "id": "int_02hx...",
    "name": "@myhandle",
    "platform": "x",
    "status": "active"
  }
]
Copy the id value for the channel you want to post to — you will pass it as the -i flag in the next step.
All Groniz CLI output is JSON. Pipe to jq to extract fields:
groniz integrations list | jq '.[0].id'
4

Schedule your first post

Create a scheduled post using the posts create command. Replace your-integration-id with the id you copied above and adjust the timestamp to a future UTC time.
groniz posts create \
  -c "Hello from Groniz CLI!" \
  -s "2025-01-15T10:00:00Z" \
  -i "your-integration-id"
FlagDescription
-cPost content (body text). Repeat to build a thread.
-sScheduled publish time in ISO 8601 UTC format.
-iIntegration ID for the target channel.
A successful response returns the newly created post object:
{
  "id": "pst_01hx...",
  "status": "scheduled",
  "scheduledAt": "2025-01-15T10:00:00Z",
  "integrationId": "your-integration-id",
  "content": ["Hello from Groniz CLI!"]
}
5

Verify the post was scheduled

List your scheduled posts to confirm the post appears in the queue:
groniz posts list
[
  {
    "id": "pst_01hx...",
    "status": "scheduled",
    "scheduledAt": "2025-01-15T10:00:00Z",
    "integrationId": "your-integration-id",
    "content": ["Hello from Groniz CLI!"]
  }
]
Your post is queued and will publish automatically at the scheduled time. No further action is needed.
Pipe to jq to filter by status:
groniz posts list | jq '[.[] | select(.status == "scheduled")]'

Next steps

Posts reference

Explore all posts sub-commands: create, list, update, delete, and publish immediately.

Integrations reference

Manage connected channels, inspect per-channel settings, and check integration status.

Agent Skill Overview

Let Claude Code, Cursor, or OpenCode schedule posts on your behalf using the agent skill.

Authentication

Set up API key auth for CI pipelines and headless agent workflows.

Build docs developers (and LLMs) love