Ghost
Connect Ghost to Citeca and publish articles automatically.
Connect Ghost and Citeca publishes finished articles straight into it — live, or as drafts for you to review first.
Setup time
About 3 minutes
Access needed
Admin on the site or store
What we touch
Blog posts only
Note
This connection can only read and publish blog posts. Your theme, products and settings are never modified.
What you need#
- Admin access to your Ghost site — Ghost(Pro) or self-hosted both work
- A Custom Integration (created in Settings → Integrations)
- Your Ghost site URL, Admin API Key, and Content API Key
Two keys, and they are not interchangeable
A Custom Integration gives you an Admin API key in id:secret form (this is what publishes) and a Content API key (read-only). You need both, and they must go in the right fields — pasting the Content key into the Admin field is the most common setup mistake.
Use your login URL, not the /ghost path
The site URL is the address you sign in to (e.g. https://yourblog.ghost.io) — with no /ghost on the end and no post path. A wrong URL fails with a 404 even when the keys are perfect.
Connecting Ghost#
Open Settings → Publishing, find Ghost and press Connect. The wizard walks you through the steps below.
- 1
Before you start
One quick check — the whole setup takes about 3 minutes.
- Confirm: I have admin access to my Ghost site
- You’ll create a Custom Integration in Ghost — it gives you the API URL and both keys on one screen.
- No plugin or coding needed.
Note
This connection can only read and publish blog posts. Your theme, products, and settings are never touched. Works on both Ghost(Pro) and self-hosted Ghost.
- 2
Create a custom integration in Ghost
Ghost has this built in — it takes about a minute.
- Name the integration, e.g.
- Click Add. (Without the button: Settings → Advanced → Integrations → Add custom integration.)
- Ghost then shows the Content API key, Admin API key and API URL together. Keep that screen open.
Note
The button opens Ghost’s “Add integration” box on your site. If Ghost asks you to sign in first, sign in and click the button again.
- 3
Paste your credentials
All three values are on that same Ghost screen. We verify them on connect, so you’ll know immediately if something’s off.
- Ghost site URL — The address you sign in to. If you paste it with /ghost on the end, we’ll trim it.
- Admin API key — Looks like {24-char id}:{64-char secret}. This is the one that publishes.
- Content API key — A shorter read-only key, shown right above the Admin key in Ghost.
Heads up
You need BOTH keys: the Admin API Key publishes, the Content API Key reads. Don’t paste the Content key into the Admin field — they’re different lengths and not interchangeable.
- 4
Author & publishing
Last details — set a byline and choose how new articles should appear.
- Author name (optional)
- Publish immediately — Articles go live on your Ghost blog as soon as they’re generated.
- Save as draft — Articles arrive as drafts in Ghost for you to review and publish yourself.
Ghost is connected
We can reach your Ghost blog. Your first articles are being prepared — they’ll appear automatically when they’re ready.
Check it worked#
Verify it’s working
3 checks
- The Ghost card shows Connected.
- The post appears under Posts in Ghost admin.
- Its author matches the one you set, if you set one.
To test without waiting for a scheduled article, open any finished article in Blog content and press Publish. You get a result per destination immediately, including the exact error if something is wrong.
Managing the connection#
Once connected, the Ghost card shows a green Connected dot and a Manage button. Everything about the connection is changed from there — there are three controls.
- Test connection — checks the credentials against Ghost right now. If they fail you get the platform’s own response, not a generic message.
- Reconnect — walks through the setup again. This is how you paste a rotated token, publish somewhere else, or change whether articles go live or wait as drafts. It replaces what is stored rather than adding a second connection.
- Disconnect — deletes the stored credentials and stops publishing. Articles already published stay on your site untouched, and your drafts and schedule in Citeca are kept.
Note
When something fails you get a plain explanation and the steps to fix it. The platform’s own response — status code, endpoint and response body — is folded away under Details for support; “Copy error report” puts all of it in one paste for a support message.
TroubleshootingQuestions#
How do I get the keys?
In Ghost admin go to Settings → Integrations → Custom integrations → Add custom integration, name it (e.g. “citeca”), and Ghost shows the API URL, Admin API Key, and Content API Key together. Copy all three.
My site URL was rejected (404).
Use the address you log in to, including https:// and with no trailing path — https://yourblog.ghost.io, not a post URL, your front-end domain, or the /ghost admin path.
The Admin API key is not accepted.
It has to be the whole id:secret string from the custom integration, copied in one go. A key missing the colon or the secret half looks plausible and fails immediately. Make sure you didn’t paste the Content key here.
Can I set a custom author name?
Yes — set an Author name on the last step and it’s used for every published article. Leave it blank to use Ghost’s default author.
What if I regenerate the integration or keys?
The old keys stop working immediately. Open Manage on the Ghost card, Reconnect, and paste the new keys.
Where do I change whether articles go live or stay as drafts?
Press Manage on the connection’s card in Settings → Publishing, then Reconnect, and answer the live-or-draft step differently. It applies to that connection only, so your other destinations are unaffected.
What happens if I regenerate the credentials?
The old ones stop working immediately and publishing fails with an authentication error. Press Manage on the card, then Reconnect, and paste the new ones — that replaces the old credentials rather than adding a second connection.
Can I disconnect without losing published articles?
Yes. Disconnecting only deletes the credentials we stored. Everything already published stays exactly where it is, because those are posts in your own CMS.
Will publishing the same article twice create a duplicate?
No. Articles are matched on their slug, so republishing updates the existing post rather than adding a second one.
Something missing or wrong here? Tell us and we will fix it.
