Zero to Scheduled Carousel in 5 Minutes: A PostNitro CLI Walkthrough
If you've ever timed how long it takes to make a carousel the usual way — draft the copy, open a design tool, build each slide, export, log into a platform, schedule — you know it's rarely five minutes. With the PostNitro CLI, the whole thing happens in your terminal, and once you're set up, a new post really is a single command away.
This is a complete, copy-paste walkthrough. By the end you'll have installed the CLI, authenticated, saved your defaults, generated an on-brand carousel, and scheduled it to your social accounts — all from the command line.
Before You Start
You'll need three things:
- Node.js 18 or higher — check with
node --version - A PostNitro account on a paid plan
- A few minutes — that's the whole point
Ready? Let's go.
Step 1: Install the CLI
Install it globally so the postnitro command is available anywhere:
npm install -g @postnitro/cli
Confirm it worked:
postnitro --help
You should see the list of available commands. If you do, you're set.
Step 2: Get and Save Your API Key
Your API key lives in your PostNitro dashboard. Go to Profile → Embed → Generate API Key and copy the key (it starts with pn-).
Save it to the CLI once:
postnitro auth set-key pn-xxxxxxxxxxxxxxxx
Then verify your configuration — the key is masked in the output, so it's safe to run anywhere:
postnitro auth status
A note for automated environments: instead of saving the key, you can set the POSTNITRO_API_KEY environment variable, or pass --api-key on any individual command. For everyday manual use, saving it once is easiest.
Step 3: See What You're Working With
Before creating anything, take a quick look at your available templates, brands, and AI presets. Each of these returns clean JSON, so you can eyeball the IDs you'll want:
postnitro template list
postnitro brand list
postnitro preset list
Note the IDs for the template, brand, and preset you like. You'll use them once in the next step and then never have to type them again.
Step 4: Save Your Defaults
This is the step that makes everything afterward feel effortless. Save your preferred template, brand, and preset as defaults:
postnitro defaults set \
--template-id tpl_123 \
--brand-id brd_456 \
--preset-id prs_789
From now on, your create commands only need the actual content — the CLI fills in the rest. (If your workspace has just one template or brand, the CLI will even pick it automatically without this step.)
You can check what's saved anytime:
postnitro defaults get
Step 5: Generate Your Carousel
Here's the moment of magic. Give the AI a topic and add --wait so the command polls until the render is finished and prints the final result:
postnitro carousel generate \
--context "5 productivity tips for remote workers" \
--wait
When it completes, the JSON output includes everything you need:
- file URLs — your finished carousel, ready to download
- a
designId— the handle you'll use to schedule - an
editorUrl— a deep link to keep editing in PostNitro if you want to tweak a slide
Want images on your slides? Add one flag and give a short visual brief:
postnitro carousel generate \
--context "5 productivity tips for remote workers" \
--generate-images \
--wait
Prefer to write the slides yourself? Use the import command and pass your own slide content as JSON for full editorial control. But for a five-minute run, AI generation is the fast path.
Step 6: Grab Your Design ID
From the Step 5 output, copy the designId. This is the specific value you'll hand to the scheduler.
One thing worth knowing so you don't mix them up: the CLI gives you two different identifiers. The job ID (sometimes shown as embedPostId) refers to the generation task. The design ID refers to the finished carousel itself — and that's the one scheduling needs. When in doubt, use the design ID to publish.
If you'd skipped --wait for a longer job, this is where you'd check on it:
postnitro status --embed-post-id <job_id>
postnitro output --embed-post-id <job_id>
Step 7: Find Your Social Account IDs
Scheduling needs to know where to post. List your connected accounts to get their IDs:
postnitro account list
Copy the ID (or IDs) of the accounts you want to publish to.
Step 8: Schedule It
Now put it all together. Attach the design to a time slot and book it to your chosen accounts:
postnitro schedule create \
--status SCHEDULED \
--scheduled-at "2026-07-25T09:00:00Z" \
--design-id dsg_abc \
--selected-accounts '["acct_123"]' \
--post-content '{"common":"5 productivity tips for remote workers 🚀 #remotework #productivity"}'
A few things to note:
--scheduled-attakes an ISO timestamp in UTC — convert from your local time so it fires when you expect.--selected-accountsis a JSON array, so you can list several accounts at once.--post-contentlets you set a shared caption viacommon, and you can override per platform if you want different copy for LinkedIn versus Instagram.- Prefer a human to review first? Set
--status DRAFTinstead and it'll wait in your queue.
That's it — your carousel is scheduled.
The Even-Faster Way: One Command
Once you're comfortable, you can collapse generation and scheduling into a single call. This writes the content, waits for the render, and books it — all at once:
postnitro generate-and-schedule \
--context "5 productivity tips for remote workers" \
--type text \
--status SCHEDULED \
--scheduled-at "2026-07-25T09:00:00Z" \
--selected-accounts '["acct_123"]' \
--post-content '{"common":"5 productivity tips for remote workers 🚀"}'
If generation succeeds but scheduling hits a snag, the error hands back the designId so you can retry just the scheduling step — no regenerating, no wasted credits.
Recap: The Whole Flow
Once you're set up, the everyday loop is short:
postnitro carousel generate --context "your topic" --wait- Copy the
designId postnitro schedule create ...
Or a single generate-and-schedule when you want it all in one line.
The first run takes five minutes because of setup. Every run after that takes seconds — and none of them involve opening a browser.
Get your API key and install the CLI at postnitro.ai.
About Qurratulain Awan
Digital marketing expert helping brands turn followers into cusotmer.

