Ghost website screenshot

Ghost

Ghost is an open-source publishing platform with hosted (Ghost(Pro)) and self-hosted options. It exposes a write-capable Admin API and a read-only Content API plus webhooks.

2 APIs 0 Features
PublishingNewslettersMembershipsContentOpen Source

APIs

Ghost Admin API

The Ghost Admin API provides full read/write access to posts, pages, tags, tiers, newsletters, offers, members, users, images, themes, webhooks, and site configuration. Authenti...

Ghost Content API

The Ghost Content API is a read-only RESTful API for delivering published content (posts, pages, tags, authors, tiers, settings) to clients. It uses query-parameter Content API ...

Collections

GraphQL

Ghost GraphQL API

Ghost does not provide a native GraphQL API. Ghost exposes two RESTful HTTP APIs: the read-only Content API, intended for public browser clients, and the write-capable Admin API...

GRAPHQL

Pricing Plans

Ghost Plans Pricing

5 plans

PLANS

Rate Limits

Ghost Rate Limits

3 limits

RATE LIMITS

FinOps

Ghost Finops

FINOPS

Event Specifications

Ghost Webhooks

Ghost Webhooks allow developers to receive real-time HTTP notifications when specific events occur within a Ghost publication, such as publishing a new post, updating a page, or...

ASYNCAPI

Semantic Vocabularies

Ghost Context

0 classes · 9 properties

JSON-LD

JSON Structure

Ghost Structure

0 properties

JSON STRUCTURE

Resources

🔗
LinkedIn
LinkedIn
🔗
Website
Website
🌐
Portal
Portal
👥
GitHubOrganization
GitHubOrganization
💻
SourceCode
SourceCode
🔗
Forums
Forums
💰
Pricing
Pricing
🔗
Plans
Plans
🔗
RateLimits
RateLimits
🔗
FinOps
FinOps
🔗
LlmsText
LlmsText

Sources

Raw ↑
opencollection: 1.0.0
info:
  name: Ghost Content API
  version: '5.0'
request:
  auth:
    type: apikey
    key: key
    value: '{{key}}'
    placement: query
items:
- info:
    name: Posts
    type: folder
  items:
  - info:
      name: Browse posts
      type: http
    http:
      method: GET
      url: https://{site}.ghost.io/ghost/api/content/posts/
      params:
      - name: include
        value: ''
        type: query
        description: Comma-separated list of related resources to include. Supported values are authors and tags.
      - name: fields
        value: ''
        type: query
        description: Comma-separated list of fields to return in the response. Use this to limit the size of the response
          by only requesting the fields you need.
      - name: filter
        value: ''
        type: query
        description: Apply fine-grained filters using Ghost's NQL query language. Examples include featured:true, tag:getting-started,
          visibility:public, and combinations using plus and comma operators.
      - name: limit
        value: ''
        type: query
        description: Maximum number of resources to return per page. Defaults to 15. Use all to return all resources without
          pagination.
      - name: page
        value: ''
        type: query
        description: Page number for paginated results. Defaults to 1.
      - name: order
        value: ''
        type: query
        description: Field and direction to order results by, for example published_at DESC or title ASC.
      - name: formats
        value: ''
        type: query
        description: Comma-separated list of content formats to include. By default only html is returned. Use formats=html,plaintext
          to also include plaintext.
    docs: Retrieve a paginated list of published posts. Supports filtering by tag, author, featured status, and other fields
      using Ghost's NQL query language. Results can be ordered and limited, and related resources like authors and tags can
      be included.
  - info:
      name: Read a post by ID
      type: http
    http:
      method: GET
      url: https://{site}.ghost.io/ghost/api/content/posts/:id/
      params:
      - name: id
        value: ''
        type: path
        description: The unique identifier of the resource
      - name: include
        value: ''
        type: query
        description: Comma-separated list of related resources to include. Supported values are authors and tags.
      - name: fields
        value: ''
        type: query
        description: Comma-separated list of fields to return in the response. Use this to limit the size of the response
          by only requesting the fields you need.
      - name: formats
        value: ''
        type: query
        description: Comma-separated list of content formats to include. By default only html is returned. Use formats=html,plaintext
          to also include plaintext.
    docs: Retrieve a single published post by its unique identifier. Related resources like authors and tags can be included.
  - info:
      name: Read a post by slug
      type: http
    http:
      method: GET
      url: https://{site}.ghost.io/ghost/api/content/posts/slug/:slug/
      params:
      - name: slug
        value: ''
        type: path
        description: The URL slug of the resource
      - name: include
        value: ''
        type: query
        description: Comma-separated list of related resources to include. Supported values are authors and tags.
      - name: fields
        value: ''
        type: query
        description: Comma-separated list of fields to return in the response. Use this to limit the size of the response
          by only requesting the fields you need.
      - name: formats
        value: ''
        type: query
        description: Comma-separated list of content formats to include. By default only html is returned. Use formats=html,plaintext
          to also include plaintext.
    docs: Retrieve a single published post by its URL slug. This is useful when you know the post's URL but not its ID.
- info:
    name: Pages
    type: folder
  items:
  - info:
      name: Browse pages
      type: http
    http:
      method: GET
      url: https://{site}.ghost.io/ghost/api/content/pages/
      params:
      - name: include
        value: ''
        type: query
        description: Comma-separated list of related resources to include. Supported values are authors and tags.
      - name: fields
        value: ''
        type: query
        description: Comma-separated list of fields to return in the response. Use this to limit the size of the response
          by only requesting the fields you need.
      - name: filter
        value: ''
        type: query
        description: Apply fine-grained filters using Ghost's NQL query language. Examples include featured:true, tag:getting-started,
          visibility:public, and combinations using plus and comma operators.
      - name: limit
        value: ''
        type: query
        description: Maximum number of resources to return per page. Defaults to 15. Use all to return all resources without
          pagination.
      - name: page
        value: ''
        type: query
        description: Page number for paginated results. Defaults to 1.
      - name: order
        value: ''
        type: query
        description: Field and direction to order results by, for example published_at DESC or title ASC.
      - name: formats
        value: ''
        type: query
        description: Comma-separated list of content formats to include. By default only html is returned. Use formats=html,plaintext
          to also include plaintext.
    docs: Retrieve a paginated list of published pages. Pages function similarly to posts but are used for static content.
      Supports the same filtering, ordering, and inclusion options as posts.
  - info:
      name: Read a page by ID
      type: http
    http:
      method: GET
      url: https://{site}.ghost.io/ghost/api/content/pages/:id/
      params:
      - name: id
        value: ''
        type: path
        description: The unique identifier of the resource
      - name: include
        value: ''
        type: query
        description: Comma-separated list of related resources to include. Supported values are authors and tags.
      - name: fields
        value: ''
        type: query
        description: Comma-separated list of fields to return in the response. Use this to limit the size of the response
          by only requesting the fields you need.
      - name: formats
        value: ''
        type: query
        description: Comma-separated list of content formats to include. By default only html is returned. Use formats=html,plaintext
          to also include plaintext.
    docs: Retrieve a single published page by its unique identifier.
  - info:
      name: Read a page by slug
      type: http
    http:
      method: GET
      url: https://{site}.ghost.io/ghost/api/content/pages/slug/:slug/
      params:
      - name: slug
        value: ''
        type: path
        description: The URL slug of the resource
      - name: include
        value: ''
        type: query
        description: Comma-separated list of related resources to include. Supported values are authors and tags.
      - name: fields
        value: ''
        type: query
        description: Comma-separated list of fields to return in the response. Use this to limit the size of the response
          by only requesting the fields you need.
      - name: formats
        value: ''
        type: query
        description: Comma-separated list of content formats to include. By default only html is returned. Use formats=html,plaintext
          to also include plaintext.
    docs: Retrieve a single published page by its URL slug.
- info:
    name: Default
    type: folder
  items:
  - info:
      name: Browse tags
      type: http
    http:
      method: GET
      url: https://{site}.ghost.io/ghost/api/content/tags/
      params:
      - name: include
        value: ''
        type: query
        description: Include a count of posts associated with each tag.
      - name: fields
        value: ''
        type: query
        description: Comma-separated list of fields to return in the response. Use this to limit the size of the response
          by only requesting the fields you need.
      - name: filter
        value: ''
        type: query
        description: Apply fine-grained filters using Ghost's NQL query language. Examples include featured:true, tag:getting-started,
          visibility:public, and combinations using plus and comma operators.
      - name: limit
        value: ''
        type: query
        description: Maximum number of resources to return per page. Defaults to 15. Use all to return all resources without
          pagination.
      - name: page
        value: ''
        type: query
        description: Page number for paginated results. Defaults to 1.
      - name: order
        value: ''
        type: query
        description: Field and direction to order results by, for example published_at DESC or title ASC.
    docs: Retrieve a paginated list of tags used to organize content. Supports filtering, ordering, and including the count
      of posts associated with each tag.
  - info:
      name: Read a tag by ID
      type: http
    http:
      method: GET
      url: https://{site}.ghost.io/ghost/api/content/tags/:id/
      params:
      - name: id
        value: ''
        type: path
        description: The unique identifier of the resource
      - name: include
        value: ''
        type: query
        description: Include a count of posts associated with each tag.
      - name: fields
        value: ''
        type: query
        description: Comma-separated list of fields to return in the response. Use this to limit the size of the response
          by only requesting the fields you need.
    docs: Retrieve a single tag by its unique identifier.
  - info:
      name: Read a tag by slug
      type: http
    http:
      method: GET
      url: https://{site}.ghost.io/ghost/api/content/tags/slug/:slug/
      params:
      - name: slug
        value: ''
        type: path
        description: The URL slug of the resource
      - name: include
        value: ''
        type: query
        description: Include a count of posts associated with each tag.
      - name: fields
        value: ''
        type: query
        description: Comma-separated list of fields to return in the response. Use this to limit the size of the response
          by only requesting the fields you need.
    docs: Retrieve a single tag by its URL slug.
- info:
    name: Authors
    type: folder
  items:
  - info:
      name: Browse authors
      type: http
    http:
      method: GET
      url: https://{site}.ghost.io/ghost/api/content/authors/
      params:
      - name: include
        value: ''
        type: query
        description: Include a count of posts associated with each author.
      - name: fields
        value: ''
        type: query
        description: Comma-separated list of fields to return in the response. Use this to limit the size of the response
          by only requesting the fields you need.
      - name: filter
        value: ''
        type: query
        description: Apply fine-grained filters using Ghost's NQL query language. Examples include featured:true, tag:getting-started,
          visibility:public, and combinations using plus and comma operators.
      - name: limit
        value: ''
        type: query
        description: Maximum number of resources to return per page. Defaults to 15. Use all to return all resources without
          pagination.
      - name: page
        value: ''
        type: query
        description: Page number for paginated results. Defaults to 1.
      - name: order
        value: ''
        type: query
        description: Field and direction to order results by, for example published_at DESC or title ASC.
    docs: Retrieve a paginated list of authors (staff users) for the publication. Supports including a count of posts per
      author using the include=count.posts parameter.
  - info:
      name: Read an author by ID
      type: http
    http:
      method: GET
      url: https://{site}.ghost.io/ghost/api/content/authors/:id/
      params:
      - name: id
        value: ''
        type: path
        description: The unique identifier of the resource
      - name: include
        value: ''
        type: query
        description: Include a count of posts associated with each author.
      - name: fields
        value: ''
        type: query
        description: Comma-separated list of fields to return in the response. Use this to limit the size of the response
          by only requesting the fields you need.
    docs: Retrieve a single author by their unique identifier.
  - info:
      name: Read an author by slug
      type: http
    http:
      method: GET
      url: https://{site}.ghost.io/ghost/api/content/authors/slug/:slug/
      params:
      - name: slug
        value: ''
        type: path
        description: The URL slug of the resource
      - name: include
        value: ''
        type: query
        description: Include a count of posts associated with each author.
      - name: fields
        value: ''
        type: query
        description: Comma-separated list of fields to return in the response. Use this to limit the size of the response
          by only requesting the fields you need.
    docs: Retrieve a single author by their URL slug.
- info:
    name: Tiers
    type: folder
  items:
  - info:
      name: Browse tiers
      type: http
    http:
      method: GET
      url: https://{site}.ghost.io/ghost/api/content/tiers/
      params:
      - name: fields
        value: ''
        type: query
        description: Comma-separated list of fields to return in the response. Use this to limit the size of the response
          by only requesting the fields you need.
      - name: filter
        value: ''
        type: query
        description: Apply fine-grained filters using Ghost's NQL query language. Examples include featured:true, tag:getting-started,
          visibility:public, and combinations using plus and comma operators.
      - name: limit
        value: ''
        type: query
        description: Maximum number of resources to return per page. Defaults to 15. Use all to return all resources without
          pagination.
      - name: page
        value: ''
        type: query
        description: Page number for paginated results. Defaults to 1.
      - name: order
        value: ''
        type: query
        description: Field and direction to order results by, for example published_at DESC or title ASC.
    docs: Retrieve a paginated list of membership tiers configured for the publication. Tiers define the access levels and
      pricing for members. Use filter=visibility:public to retrieve only publicly visible tiers.
  - info:
      name: Read a tier by ID
      type: http
    http:
      method: GET
      url: https://{site}.ghost.io/ghost/api/content/tiers/:id/
      params:
      - name: id
        value: ''
        type: path
        description: The unique identifier of the resource
      - name: fields
        value: ''
        type: query
        description: Comma-separated list of fields to return in the response. Use this to limit the size of the response
          by only requesting the fields you need.
    docs: Retrieve a single membership tier by its unique identifier.
- info:
    name: Settings
    type: folder
  items:
  - info:
      name: Read settings
      type: http
    http:
      method: GET
      url: https://{site}.ghost.io/ghost/api/content/settings/
    docs: Retrieve all public settings for the Ghost publication, including title, description, logo, icon, cover image, language,
      timezone, navigation, and other site-wide configuration values.
bundled: true