Guide
By Axel Antas-Bergkvist Published May 23, 2026

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 local markdown files and push 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:

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.

  1. Log in to your Ghost Admin dashboard (the /ghost area of your site).
  2. Open Settings (the gear icon).
  3. Go to Advanced → Integrations.
  4. Under Custom integrations, click Add custom integration.
  5. Give it a name you’ll recognize — something like Specter or Local markdown sync — and save it.
  6. Ghost now shows the integration’s keys. Copy the Admin API Key (the id:secret value) and the API URL (your Ghost site’s base URL, for example https://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

Specter’s onboarding asks for two things:

  1. Your Ghost site URL (the API URL from above).
  2. Your Admin API key (the id:secret value).

Paste both, then click Test Connection. If it succeeds, pick a local folder and run your first sync. Specter turns your posts into plain markdown files you can edit with any AI or editor, then writes your changes 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 stores the key locally on your Mac in a config file with 600 file permissions — readable only by your user account. Nothing is sent to a third-party server; the sync runs directly between your machine and your own Ghost site. 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:

Double-check those two fields and run Test Connection again.

Once your key is in place, the rest is quiet. Your posts live as markdown on your Mac, you edit them however you like, and changes flow back to Ghost automatically. If that sounds like the setup you’ve been wanting, Specter was built for exactly this — and if you’d like to know who’s behind it, there’s a short about page too.

Buy Specter — $49 Browse all guides