Ghost Content - Authors API

Read-only authors.

OpenAPI Specification

ghost-org-content-authors-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Ghost Content and Admin APIs Admin - Images Content - Authors API
  description: 'Ghost is an open-source (MIT) publishing platform for professional publications, newsletters, memberships, and paid subscriptions. Every Ghost site - whether self-hosted or on managed Ghost(Pro) - exposes two documented public REST APIs under https://{admin_domain}/ghost/api/.


    The Content API is read-only and is authenticated with a Content API key passed as the `key` query parameter; it serves published posts, pages, authors, tags, tiers, and public settings for consumption by front-ends and static sites.


    The Admin API is read-write and is authenticated with an Admin API key that is used to sign a short-lived JWT sent as `Authorization: Ghost {token}` (a staff access token or user session may also be used). It manages posts, pages, members, tags, labels, tiers, offers, newsletters, users, images, themes, and webhooks.


    The `{admin_domain}` server variable is the site''s domain (for Ghost(Pro), typically a `*.ghost.io` domain). All requests must use HTTPS. The `Accept-Version` header (for example `v5.0`) declares the minimum compatible API version.'
  version: '5.0'
  contact:
    name: Ghost
    url: https://ghost.org
  license:
    name: MIT
    url: https://github.com/TryGhost/Ghost/blob/main/LICENSE
servers:
- url: https://{admin_domain}/ghost/api
  description: A Ghost site's API root (self-hosted or Ghost(Pro))
  variables:
    admin_domain:
      default: demo.ghost.io
      description: The domain of the Ghost site (Ghost(Pro) uses *.ghost.io).
security:
- contentApiKey: []
- adminJwt: []
tags:
- name: Content - Authors
  description: Read-only authors.
paths:
  /content/authors/:
    get:
      operationId: browseContentAuthors
      tags:
      - Content - Authors
      summary: Browse authors
      parameters:
      - $ref: '#/components/parameters/ContentKey'
      - $ref: '#/components/parameters/Include'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Page'
      responses:
        '200':
          description: A list of authors.
  /content/authors/{id}/:
    get:
      operationId: readContentAuthorById
      tags:
      - Content - Authors
      summary: Read an author by ID
      parameters:
      - $ref: '#/components/parameters/ContentKey'
      - $ref: '#/components/parameters/PathId'
      responses:
        '200':
          description: The requested author.
  /content/authors/slug/{slug}/:
    get:
      operationId: readContentAuthorBySlug
      tags:
      - Content - Authors
      summary: Read an author by slug
      parameters:
      - $ref: '#/components/parameters/ContentKey'
      - $ref: '#/components/parameters/PathSlug'
      responses:
        '200':
          description: The requested author.
components:
  parameters:
    PathSlug:
      name: slug
      in: path
      required: true
      description: The resource slug.
      schema:
        type: string
    Page:
      name: page
      in: query
      required: false
      description: Page number of results to return.
      schema:
        type: integer
        default: 1
    PathId:
      name: id
      in: path
      required: true
      description: The resource ID.
      schema:
        type: string
    ContentKey:
      name: key
      in: query
      required: true
      description: Content API key.
      schema:
        type: string
    Include:
      name: include
      in: query
      required: false
      description: Comma-separated related data to include (for example authors,tags).
      schema:
        type: string
    Limit:
      name: limit
      in: query
      required: false
      description: Number of records per page (default 15, or 'all').
      schema:
        type: string
        default: '15'
  securitySchemes:
    contentApiKey:
      type: apiKey
      in: query
      name: key
      description: Content API key from a Custom Integration, passed as the `key` query parameter. Safe for browser use; grants read-only access to public data.
    adminJwt:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: 'Admin API access. An Admin API key (id:secret) is used to sign a short-lived JWT sent as `Authorization: Ghost {token}`. A staff access token or an authenticated user session may also be used.'