Confluence · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Confluence Blog Post API
8 actions
8 updates
phrasing
extends
openapi/confluence-blog-post-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Confluence's API. It is a proposal applied on top of the contract, not a document Confluence publishes.
What the actions change
x-apievangelist-phrasing
Targets 8
$.info
$.paths['/blogposts'].get
$.paths['/blogposts'].post
$.paths['/blogposts/{id}'].get
$.paths['/blogposts/{id}'].put
$.paths['/blogposts/{id}'].delete
$.paths['/labels/{id}/blogposts'].get
$.paths['/spaces/{id}/blogposts'].get
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Confluence Blog Post API
version: 1.0.0
extends: openapi/confluence-blog-post-api-openapi.yml
actions:
- target: $.info
update:
x-apievangelist-phrasing:
method: generated
generated: '2026-10-01'
generator: build-phrasing.py
label: Generated by API Evangelist
operations: 7
- target: $.paths['/blogposts'].get
update:
x-apievangelist-phrasing:
intent: List blog posts across the site
effect: read
questions:
- How do I list every blog post on my Confluence site?
- Can I search blog posts across spaces by title?
- Which blog posts are still drafts?
instructions:
- text: List blog posts titled {title}.
slots:
title: query.title
- text: Get all {status} blog posts across spaces {spaces}.
slots:
status: query.status
spaces: query.space-id
method: generated
generated: '2026-10-01'
- target: $.paths['/blogposts'].post
update:
x-apievangelist-phrasing:
intent: Publish a blog post
effect: write
questions:
- How do I write a new blog post in a space?
- Can I create a blog post as a draft before publishing?
instructions:
- text: Create a blog post titled {title} in space {spaceId} with status {status} and body {body}.
slots:
title: requestBody.title
spaceId: requestBody.spaceId
status: requestBody.status
body: requestBody.body
- text: Post a {status} blog entry {title} to space {spaceId} saying {body}.
slots:
title: requestBody.title
spaceId: requestBody.spaceId
status: requestBody.status
body: requestBody.body
method: generated
generated: '2026-10-01'
- target: $.paths['/blogposts/{id}'].get
update:
x-apievangelist-phrasing:
intent: Get a blog post
effect: read
questions:
- How do I read a specific blog post with its content?
- Can I fetch an older version of a blog post?
instructions:
- text: Get blog post {id}.
slots:
id: path.id
- text: Fetch blog post {id} at version {version} in {format} format.
slots:
id: path.id
version: query.version
format: query.body-format
method: generated
generated: '2026-10-01'
- target: $.paths['/blogposts/{id}'].put
update:
x-apievangelist-phrasing:
intent: Edit a blog post
effect: write
questions:
- How do I edit an existing blog post?
- What version number has to be sent when updating a blog post?
instructions:
- text: Update blog post {id} to version {version} with title {title}, status {status} and body {body}.
slots:
id: path.id
version: requestBody.version
title: requestBody.title
status: requestBody.status
body: requestBody.body
- text: Rewrite blog post {id} as {body}, saving version {version} titled {title} with status {status}.
slots:
id: path.id
version: requestBody.version
title: requestBody.title
status: requestBody.status
body: requestBody.body
method: generated
generated: '2026-10-01'
- target: $.paths['/blogposts/{id}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a blog post
effect: destructive
questions:
- Can I delete a blog post I no longer need?
- What happens to a blog post when it's deleted?
instructions:
- text: Delete blog post {id}.
slots:
id: path.id
- text: Remove the blog post with ID {id}.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/labels/{id}/blogposts'].get
update:
x-apievangelist-phrasing:
intent: List blog posts with a label
effect: read
questions:
- Which blog posts are tagged with a given label?
- Can I limit labelled blog posts to certain spaces?
instructions:
- text: List blog posts tagged with label {id}.
slots:
id: path.id
- text: Find blog posts carrying label {id} in spaces {spaces}.
slots:
id: path.id
spaces: query.space-id
method: generated
generated: '2026-10-01'
- target: $.paths['/spaces/{id}/blogposts'].get
update:
x-apievangelist-phrasing:
intent: List the blog posts in a space
effect: read
questions:
- What blog posts have been published in a particular space?
- Can I filter a space's blog posts by title or status?
instructions:
- text: List all blog posts in space {id}.
slots:
id: path.id
- text: Find blog posts titled {title} in space {id}.
slots:
id: path.id
title: query.title
method: generated
generated: '2026-10-01'
Work with this as data
Every overlay 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 openapi overlays
4 MCP tools reach this
find_overlaysBrowse and filter every overlay in the catalog.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.
Call it yourself
curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/confluence-blog-post-api-phrasing-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
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.