Get Published Post

ghost.content_get_post
ActionBusiness appsconnection required

Calls the Ghost API with the connection's credentials.

Read one published post by id or by slug through the read-only Content API. A draft answers 404.

Connection

Required
Yes — the node will not save without one
Auth type
API key
Providers
Ghost
Secret shape
{"admin_api_key": "<id>:<secret>", "content_api_key": "…"}
Config it needs
admin_url, api_version
Resolved by
config.connection_id, else node.connection_id

Configuration

5 fields, none required. A dotted path is a nested object and name[] an array of objects — the editor renders the same tree.

FieldTypeRequiredDefaultConstraintsExample
post_id
Ghost id of the post — the 24-character ObjectID from a previous step.
stringNo———
slug
URL slug of the post, used instead of an id to look it up.
stringNo———
include
Extra related data to load, comma-separated. Posts and pages accept 'authors' and 'tags'; without it neither is present in the response.
stringNo—one of "authors", "tags", "authors,tags"—
fields
Comma-separated list of fields to return, for a leaner response (for example 'id,title,url'). Does not combine well with include.
stringNo———
formats
Content formats to return, comma-separated. The Content API returns 'html' by default and can add 'plaintext'.
stringNo—one of "html", "plaintext", "html,plaintext"—
  • At least one of post_id, slug must be set.

Output

One shape.

result

FieldTypeExample
id
Ghost id of the record, a 24-character ObjectID.
string—
uuid
Stable public uuid of the record.
string—
title
Title Ghost stored.
string—
slug
URL slug Ghost stored.
string—
status
Publication status: draft, published, scheduled or sent.
string—
visibility
Who may read it: public, members, paid or tiers.
string—
featured
Whether the record is flagged as featured.
boolean—
url
Public URL on the site; a draft gets its preview URL.
string—
excerpt
Custom excerpt when one is set, else one Ghost derived.
string—
feature_image
URL of the feature image, null when there is none.
string—
published_at
When it was, or will be, published (ISO 8601 UTC).
string—
created_at
When the record was created (ISO 8601 UTC).
string—
updated_at
When it last changed — pass this back on the next edit.
string—
html
Rendered HTML; present only when formats asked for it.
string—
lexical
Lexical source of the body, as a JSON string.
string—
tags
Tags on the record; present only with include=tags.
array—
authors
Authors of the record; present only with include=authors.
array—
{
  "authors": [],
  "created_at": "",
  "excerpt": "",
  "feature_image": "",
  "featured": false,
  "html": "",
  "id": "",
  "lexical": "",
  "published_at": "",
  "slug": "",
  "status": "",
  "tags": [],
  "title": "",
  "updated_at": "",
  "url": "",
  "uuid": "",
  "visibility": ""
}

Notes

  • GET /ghost/api/content/posts/{id}/ or /ghost/api/content/posts/slug/{slug}/.
  • Content API: published records only, and never a draft. It uses the connection's content_api_key, not the Admin API key.

See Get Published Post run in a workflow.

In a technical demo we add the Ghost connection, drop the node on the canvas and let Workflow Health pre-flight it before the first real run.