List Published Posts
ghost.content_list_posts
ActionBusiness appsconnection required
Calls the Ghost API with the connection's credentials.
List published posts through the read-only Content API, newest first. Drafts and scheduled posts are never returned.
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
7 fields, none required. A dotted path is a nested object and name[] an array of objects — the editor renders the same tree.
| Field | Type | Required | Default | Constraints | Example |
|---|---|---|---|---|---|
filter An NQL filter to narrow the results, such as 'status:draft' or 'tag:getting-started+featured:true'. | string | No | — | — | — |
order Sort order in SQL style, such as 'published_at desc' or 'title asc'. | string | No | — | — | — |
limit How many records to return in one page. Ghost returns 15 by default and caps a page at 100. | number | No | — | 1–100 | — |
page Which 1-based page of the result set to return. | number | No | — | ≥ 1 | — |
include Extra related data to load, comma-separated. Posts and pages accept 'authors' and 'tags'; without it neither is present in the response. | string | No | — | 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. | string | No | — | — | — |
formats Content formats to return, comma-separated. The Content API returns 'html' by default and can add 'plaintext'. | string | No | — | one of "html", "plaintext", "html,plaintext" | — |
Output
One shape.
result
| Field | Type | Example |
|---|---|---|
items The records on this page of results. | array | — |
count How many records are in items. | number | — |
pagination.page 1-based index of the page that was returned. | number | — |
pagination.limit How many records per page were requested. | number | — |
pagination.pages How many pages the result set has in total. | number | — |
pagination.total How many records match the query in total. | number | — |
pagination.next Number of the next page, null on the last one. | number | — |
pagination.prev Number of the previous page, null on the first one. | number | — |
{
"count": 0,
"items": [],
"pagination": {
"limit": 0,
"next": 0,
"page": 0,
"pages": 0,
"prev": 0,
"total": 0
}
}Notes
- GET /ghost/api/content/posts/?key=…
- Content API: published records only, and never a draft. It uses the connection's content_api_key, not the Admin API key.
See List Published Posts 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.