Guide
How to get your Ghost Admin API key (step by step)
If you want to connect Ghost to an external tool, you almost always need a Ghost Admin API key. This is the credential that lets an app read and write your posts through Ghost’s Admin API. Tools like Specter use it to pull your posts into your workspace and publish your edits back.
This guide shows you exactly where to find it, how to create a custom integration, and the one mistake that trips up nearly everyone.
What the Admin API key is for
Ghost exposes two separate APIs, each with its own kind of key:
- The Content API is read-only. It’s for fetching published posts to display on a site or app.
- The Admin API can read and write. It’s how external tools create drafts, update posts, change tags, and set publish status.
Any tool that needs to edit or sync your posts — including Specter — needs the Admin API key, not the Content key.
The #1 mistake: Admin key vs Content key
This is worth saying twice, because it causes most “connection failed” errors.
A Ghost Admin API key looks like two parts joined by a colon: id:secret. For example, something like 64a1...b2c:f3d4...9e8. It has both an id and a secret.
A Content API key is a single string with no colon, often described as a hex value.
If you paste the Content key into a tool that expects the Admin key, the connection will fail or you’ll get an authentication error. When in doubt, look for the colon. The Admin API Key has one; the Content API Key does not.
Create a custom integration in Ghost
Both Ghost(Pro) (hosted) and self-hosted Ghost work the same way here. You create a “custom integration,” and Ghost generates the keys for you automatically.
- Log in to your Ghost Admin dashboard (the
/ghostarea of your site). - Open Settings (the gear icon).
- Go to Advanced → Integrations.
- Under Custom integrations, click Add custom integration.
- Give it a name you’ll recognize — something like
SpecterorLocal markdown sync— and save it. - Ghost now shows the integration’s keys. Copy the Admin API Key (the
id:secretvalue) and the API URL (your Ghost site’s base URL, for examplehttps://yourblog.com).
That’s it. There’s no separate “API access” toggle to flip — creating the integration is what grants access. You can come back to this screen any time to copy the key again, regenerate it, or delete the integration to revoke access.
Paste it into Specter
When you connect Ghost in the Specter webapp, the connection screen asks for two things:
- Your Ghost site URL (the API URL from above).
- Your Admin API key (the
id:secretvalue).
Paste both, then click Test Connection. If it succeeds, run your first sync and every post lands in your workspace as clean, editable content. From there you can edit a post by hand or run an AI recipe across the whole archive, review the changes as a diff, and publish back through the Admin API. If you’re curious how that workflow looks day to day, see using AI to edit Ghost posts.
Keep your Admin key secret
Treat the Admin API key like a password. It has full write access to your blog’s content, so anyone who has it can create, edit, or unpublish your posts. Don’t paste it into public forums, commit it to a Git repo, or share it in screenshots.
Specter uses the key only to sync between your workspace and your own Ghost site, and it’s stored as an encrypted connection credential, never displayed back to you. If you ever suspect a key has leaked, delete the integration in Ghost (Settings → Advanced → Integrations) and create a new one. That instantly invalidates the old key.
Troubleshooting: “connection failed” or “invalid key”
Nine times out of ten, one of two things is wrong:
- You used the Content key by mistake. Go back and copy the Admin API Key — the value with a colon in it (
id:secret). - The API URL is wrong. Use your site’s base URL (for example
https://yourblog.com), not the/ghostadmin path and not a URL with a trailing slash or typo.
Double-check those two fields and run Test Connection again.
Once your key is in place, the rest is quiet. Your whole blog opens in one workspace, you edit it however you like — by hand or with an AI recipe — and reviewed changes flow back to Ghost. If that sounds like the setup you’ve been wanting, subscribe now and your workspace opens with 500 free credits — and if you’d like to know who’s behind it, there’s a short about page too.
Prefer to keep the key on your own machine and run the engine locally? The desktop and open-source edition stores it in a config file on your Mac (chmod 600), with nothing routed through our servers.