Ghost Posts API

Create, read, update, and delete posts. Posts are the primary content resource in Ghost and support rich content via the Lexical editor format.

Operations 6

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /posts/ List posts including drafts · Browse posts #
Ask an LLM
“How do I list all my posts including drafts and scheduled ones?”
“Can I filter posts by tag and sort by publish date?”
Tell an agent
List posts matching {filter}.
Show me {limit} posts ordered by {order}.
POST /posts/ Create a post · Create a post #
Ask an LLM
“How do I publish a new blog post programmatically?”
“Can I tag a new post with a tag that doesn't exist yet?”
Tell an agent
Create post {posts}.
Write a new draft post with the title and HTML body in {posts}.
GET /posts/{id}/ Get a post by ID · Read a post by ID #
Ask an LLM
“How do I load one post by ID, including drafts and scheduled ones?”
“Can I get a single post's content as HTML?”
Tell an agent
Get post {id}.
Get post {id} with content in {formats}.
PUT /posts/{id}/ Update a post · Update a post #
Ask an LLM
“How do I edit a post without resending every field?”
“Why does editing a post need the current updated_at?”
Tell an agent
Update post {id} with {posts}.
Change the title of post {id}.
DELETE /posts/{id}/ Delete a post · Delete a post #
Ask an LLM
“How do I permanently delete a blog post?”
“Can a deleted post be restored?”
Tell an agent destructive · confirm first
Delete post {id}.
Permanently remove post {id}.
GET /posts/slug/{slug}/ Get a published post by slug · Read a post by slug #
Ask an LLM
“How do I find a post when I know its URL but not its ID?”
“Can I look up a published post by slug?”
Tell an agent
Get the post with slug {slug}.
Look up post {slug} with {include}.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/ghost-org:ghost-org-posts-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

ghost-org-posts-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Ghost Org Posts API
  version: '5.0'
  termsOfService: https://ghost.org/terms/
  description: 'Operations tagged Posts across 2 of this provider''s published API definitions: ghost-org-admin-api-openapi.yml, ghost-org-content-api-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://{site}.ghost.io/ghost/api/admin
  description: Ghost Pro Hosted Site
  variables:
    site:
      default: your-site
      description: Your Ghost site subdomain
- url: '{protocol}://{domain}/ghost/api/admin'
  description: Self-Hosted Ghost Instance
  variables:
    protocol:
      default: https
      enum:
      - https
      - http
    domain:
      default: localhost:2368
      description: Your Ghost instance domain and port
- url: https://{site}.ghost.io/ghost/api/content
  description: Ghost Pro Hosted Site
  variables:
    site:
      default: your-site
      description: Your Ghost site subdomain
- url: '{protocol}://{domain}/ghost/api/content'
  description: Self-Hosted Ghost Instance
  variables:
    protocol:
      default: https
      enum:
      - https
      - http
    domain:
      default: localhost:2368
      description: Your Ghost instance domain and port
tags:


# --- truncated at 32 KB (41 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/ghost-org/refs/heads/main/openapi/ghost-org-posts-api-openapi.yml