GhostCMS

Publishing platform for professional bloggers
Connect it
In Keystile Automations → Connections → New connection, choose GhostCMS and sign in. Your AI tools and workflows then use it through Keystile; they never see the password or key.How connecting works.
Try it from your AI tool
Using Keystile, in GhostCMS: archive newsletter (Archive a newsletter so it can no longer be sent or subscribed to).What it can do (66 actions)
| Action | What it does | Changes data |
|---|---|---|
| Add Member Label | Add one label to a member, keeping their other labels. | Yes |
| Archive Newsletter | Archive a newsletter so it can no longer be sent or subscribed to. | |
| Archive Offer | Archive an offer so it can no longer be redeemed. | |
| Archive Tier | Archive a paid tier so new members can no longer buy it. | |
| Copy Page | Duplicate a page as a new draft. | Yes |
| Copy Post | Duplicate a post as a new draft. | Yes |
| Create Label | Create a member label. | Yes |
| Create Member | Create a new member | Yes |
| Create Newsletter | Create a new newsletter. | Yes |
| Create Offer | Create a discount or free-trial offer for a paid tier. | Yes |
| Create Page | Create a static page as a draft, published or scheduled. | Yes |
| Create Post | Create a new post | Yes |
| Create Tag | Create a post tag. | Yes |
| Create Tier | Create a paid membership tier. | Yes |
| Custom API Call | Make a custom API call to a specific endpoint | Yes |
| Delete Label | Permanently delete a member label. | |
| Delete Member | Permanently delete a member. | |
| Delete Page | Permanently delete a page. | |
| Delete Post | Permanently delete a post. | |
| Delete Tag | Permanently delete a tag. | |
| Find Member | Find a member by email | |
| Find User | Find a staff user by email | |
| Get Label | Get a member label by ID. | |
| Get Member | Get a member by ID. | |
| Get Member by Email | Find a member by exact email address. | |
| Get Member Stats | Get the current member totals (free, paid, comped) and the daily history. | |
| Get Newsletter | Get a newsletter by ID. | |
| Get Offer | Get an offer by ID. | |
| Get Page | Get a page by ID, including its HTML content. | |
| Get Page by Slug | Get a page by its URL slug. | |
| Get Post | Get a post by ID, including its HTML content. | |
| Get Post by Slug | Get a post by its URL slug. | |
| Get Settings | Get the publication settings: branding, SEO, navigation, timezone and membership options. | |
| Get Site | Get the site title, URL and Ghost version. | |
| Get Tag | Get a tag by ID. | |
| Get Tag by Slug | Get a tag by its slug. | |
| Get Tier | Get a membership tier by ID. | |
| Get User | Get a staff user by ID. | |
| Get User by Email | Find a staff user by exact email address. | |
| List Labels | List member labels. | |
| List Member Activity | List member activity events such as signups, logins, newsletter changes, email opens and payments. | |
| List Members | List or search members. | |
| List Newsletters | List the newsletters of the publication. | |
| List Offers | List discount and trial offers. | |
| List Pages | List or search pages with an optional filter. | |
| List Posts | List or search posts with an optional filter. | |
| List Tags | List or search post tags. | |
| List Tiers | List membership tiers with prices and benefits. | |
| List Users | List staff users such as authors and editors. | |
| Publish Post | Publish a draft post now, optionally emailing it to a newsletter. | Yes |
| Remove Member Label | Remove one label from a member, keeping their other labels. | Yes |
| Schedule Post | Schedule a draft post to publish at a future time. | Yes |
| Subscribe Member to Newsletters | Add newsletter subscriptions to a member, keeping existing ones. | Yes |
| Unpublish Post | Move a published or scheduled post back to draft. | Yes |
| Unsubscribe Member from Newsletters | Remove newsletter subscriptions from a member. | |
| Update Label | Rename a member label. | Yes |
| Update Member | Update a member | Yes |
| Update Newsletter | Update the name or settings of a newsletter. | Yes |
| Update Offer | Update the name, code or display text of an offer. | Yes |
| Update Page | Update the content, settings or status of a page. | Yes |
| Update Post | Update the content or settings of a post. | Yes |
| Update Tag | Update the name or settings of a tag. | Yes |
| Update Tier | Update the prices, benefits or settings of a tier. | Yes |
| Upload File | Upload a downloadable file (PDF, ZIP, CSV and more) to Ghost and get its URL. | Yes |
| Upload Image | Upload an image to Ghost and get its URL. | Yes |
| Upload Media | Upload a video or audio file to Ghost and get its URL. | Yes |
Start a workflow when… (6 triggers)
- Member Added — Triggers when a new member is added
- Member Edited — Triggers when a member is edited
- Member Deleted — Triggers when a member is deleted
- Post Published — Triggers when a post is published
- Post Scheduled — Triggers when a post is scheduled
- Page Published — Triggers when a page is published
How Keystile protects it
Every GhostCMS action is checked before it runs, whether it comes from an AI tool or a workflow. 28 of its actions change data; your rules, limits and budgets decide whether each is allowed, held for a person or stopped, and it all goes into the signed record.
Use GhostCMS with your AI assistant — safelyClaude, Cursor or ChatGPT do the work; Keystile checks every action first.
Get early access