Every API here is available over the APIs.io API and to AI agents over MCP.
openapi: 3.1.0
info:
title: Jnana Therapeutics Content API
version: wp/v2
summary: Anonymously readable WordPress REST content API behind www.jnanatx.com.
description: >-
The read-only content surface Jnana Therapeutics exposes at https://www.jnanatx.com/wp-json.
Jnana Therapeutics is a Boston-based biotechnology company that built the RAPID (Reactive
Affinity Probe Interaction Discovery) next-generation chemoproteomics platform for small-molecule
drug discovery, and has been a direct subsidiary of Otsuka America, Inc. since Otsuka
Pharmaceutical completed its acquisition of the company on 23 September 2024. It runs no
developer program and markets no product API. This document is an API Evangelist derivation of
the WordPress `wp/v2`, `oembed/1.0`, `genesis/v1` and `yoast/v1` route index the site publishes
at /wp-json/, restricted to the operations that were verified to return data anonymously on
2026-08-23. Write operations and the administrative surface — `/wp/v2/settings`,
`/wp/v2/menu-items`, `/wp/v2/block-types`, `/wp/v2/templates`, `/wp/v2/navigation`,
the `wp-abilities/v1`, `wp-site-health/v1`, `wp-block-editor/v1`, `contact-form-7/v1`,
`wpe/cache-plugin/v1` and `wpe_sign_on_plugin/v1` namespaces, and `/oembed/1.0/proxy` — all
answered 401/403/404 anonymously and are deliberately excluded. See
x-api-evangelist-provenance.
contact:
name: Jnana Therapeutics
url: https://www.jnanatx.com/contact-us/
email: info@jnanatx.com
x-api-evangelist-provenance: >-
Derived by the API Evangelist enrichment pipeline from the live WordPress REST route index at
https://www.jnanatx.com/wp-json/ (202 routes across 11 namespaces) and verified against live
anonymous responses on 2026-08-23. Every query parameter below appears verbatim in that route
index `args` block for the endpoint it is attached to, and every collection count in a
description was read from the `X-WP-Total` response header on that date. Jnana Therapeutics
publishes no OpenAPI, no developer documentation and no API reference for this surface; the
humanURL in apis.yml points at the upstream WordPress REST handbook that defines the wp/v2
contract. The deployment is served by WP Engine behind Cloudflare, responses carry
`x-robots-tag: noindex` and `cache-control: max-age=600, must-revalidate`, and an OPTIONS
preflight on /wp/v2/posts returns `allow: GET` — confirming the surface is read-only to an
anonymous caller. Nothing here was obtained with credentials.
servers:
- url: https://www.jnanatx.com/wp-json
description: Production content API
tags:
- name: discovery
description: Route, type, taxonomy and status discovery documents.
- name: posts
description: >-
News archive — press releases, in-the-news coverage, presentations and insights
(62 published at harvest time).
- name: pages
description: Corporate pages — home, RAPID platform, programs, team, join us, news, contact,
privacy policy, terms of use (9 published at harvest time).
- name: media
description: Media library (376 attachments at harvest time).
- name: taxonomy
description: >-
Post categories (7 registered — press-releases 43, in-the-news 16, presentations 3,
insights 2, publications 0, blogs 0, videos 0) and team departments (4 registered).
The core `post_tag` taxonomy is not exposed — /wp/v2/tags returns rest_no_route.
- name: team
description: >-
`team` custom post type — leadership, board and scientific advisory profiles
(9 published at harvest time).
- name: comments
description: Comment collection. Registered and reachable, but empty — no post carries comments.
- name: users
description: >-
Author collection (4 records). Anonymously readable, exposing WordPress author display names
and slugs. Flagged in conventions/ as an exposure worth reviewing, not a documented product.
- name: search
description: Cross-content search across published objects (73 indexed at harvest time).
- name: oembed
description: oEmbed 1.0 provider endpoint for www.jnanatx.com URLs.
- name: seo
description: Yoast SEO head-metadata document for a given site URL.
- name: theme
description: Genesis theme reading-settings and breadcrumb documents.
paths:
/:
get:
tags: [discovery]
operationId: getApiIndex
summary: Get the REST API index
description: >-
Site identity plus the full route index — 202 routes across 11 namespaces
(oembed/1.0, wpe/cache-plugin/v1, wpe_sign_on_plugin/v1, contact-form-7/v1, yoast/v1,
genesis-custom-blocks, genesis/v1, wp/v2, wp-site-health/v1, wp-block-editor/v1,
wp-abilities/v1).
parameters:
- { name: context, in: query, required: false, schema: { type: string, enum: [view, embed, edit], default: view } }
- { name: namespace, in: query, required: false, schema: { type: string } }
responses:
'200':
description: The API index document.
content:
application/json:
schema: { $ref: '#/components/schemas/ApiIndex' }
/wp/v2/posts:
get:
tags: [posts]
operationId: listPosts
summary: List news posts
description: Press releases, in-the-news coverage, presentations and insights. 62 published at harvest time.
parameters:
- $ref: '#/components/parameters/Context'
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/PerPage'
- $ref: '#/components/parameters/Search'
- $ref: '#/components/parameters/After'
- $ref: '#/components/parameters/Before'
- $ref: '#/components/parameters/ModifiedAfter'
- $ref: '#/components/parameters/ModifiedBefore'
- $ref: '#/components/parameters/Exclude'
- $ref: '#/components/parameters/Include'
- $ref: '#/components/parameters/Offset'
- $ref: '#/components/parameters/Order'
- { name: orderby, in: query, required: false, schema: { type: string, enum: [author, date, id, include, modified, parent, relevance, slug, include_slugs, title], default: date } }
- $ref: '#/components/parameters/Slug'
- { name: author, in: query, required: false, schema: { type: array, items: { type: integer } } }
- { name: author_exclude, in: query, required: false, schema: { type: array, items: { type: integer } } }
- { name: categories, in: query, required: false, description: 'Limit to posts in these category IDs (5 press-releases, 6 in-the-news, 7 insights, 12 publications, 13 presentations, 14 blogs, 15 videos).', schema: { type: array, items: { type: integer } } }
- { name: categories_exclude, in: query, required: false, schema: { type: array, items: { type: integer } } }
- { name: sticky, in: query, required: false, schema: { type: boolean } }
- { name: ignore_sticky, in: query, required: false, schema: { type: boolean, default: false } }
- { name: format, in: query, required: false, schema: { type: array, items: { type: string } } }
- { name: search_columns, in: query, required: false, schema: { type: array, items: { type: string, enum: [post_title, post_content, post_excerpt] } } }
- { name: search_semantics, in: query, required: false, schema: { type: string, enum: [exact] } }
- { name: tax_relation, in: query, required: false, schema: { type: string, enum: [AND, OR] } }
- { name: status, in: query, required: false, description: 'Anonymous callers may only request `publish`; any other value returns 401.', schema: { type: array, items: { type: string }, default: [publish] } }
responses:
'200':
description: A page of posts. `X-WP-Total` and `X-WP-TotalPages` carry the collection size; `Link` carries rel=next/prev.
headers:
X-WP-Total: { $ref: '#/components/headers/XWPTotal' }
X-WP-TotalPages: { $ref: '#/components/headers/XWPTotalPages' }
Link: { $ref: '#/components/headers/LinkPagination' }
content:
application/json:
schema: { type: array, items: { $ref: '#/components/schemas/Post' } }
'400':
$ref: '#/components/responses/InvalidParam'
'401':
$ref: '#/components/responses/Forbidden'
/wp/v2/posts/{id}:
get:
tags: [posts]
operationId: getPost
summary: Get a single news post
parameters:
- $ref: '#/components/parameters/IdPath'
- $ref: '#/components/parameters/Context'
- { name: password, in: query, required: false, schema: { type: string } }
responses:
'200':
description: The post.
content:
application/json:
schema: { $ref: '#/components/schemas/Post' }
'404':
$ref: '#/components/responses/NotFound'
/wp/v2/pages:
get:
tags: [pages]
operationId: listPages
summary: List corporate pages
description: 9 published at harvest time — home, rapid-platform, programs, team, join-us, news, contact-us, privacy-policy, terms-of-use.
parameters:
- $ref: '#/components/parameters/Context'
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/PerPage'
- $ref: '#/components/parameters/Search'
- $ref: '#/components/parameters/Order'
- $ref: '#/components/parameters/Slug'
- { name: parent, in: query, required: false, schema: { type: array, items: { type: integer } } }
- { name: menu_order, in: query, required: false, schema: { type: integer } }
responses:
'200':
description: A page of pages.
headers:
X-WP-Total: { $ref: '#/components/headers/XWPTotal' }
X-WP-TotalPages: { $ref: '#/components/headers/XWPTotalPages' }
content:
application/json:
schema: { type: array, items: { $ref: '#/components/schemas/Page' } }
'400':
$ref: '#/components/responses/InvalidParam'
/wp/v2/pages/{id}:
get:
tags: [pages]
operationId: getPage
summary: Get a single corporate page
parameters:
- $ref: '#/components/parameters/IdPath'
- $ref: '#/components/parameters/Context'
responses:
'200':
description: The page.
content:
application/json:
schema: { $ref: '#/components/schemas/Page' }
'404':
$ref: '#/components/responses/NotFound'
/wp/v2/media:
get:
tags: [media]
operationId: listMedia
summary: List media attachments
description: 376 attachments at harvest time.
parameters:
- $ref: '#/components/parameters/Context'
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/PerPage'
- $ref: '#/components/parameters/Search'
- $ref: '#/components/parameters/Order'
- $ref: '#/components/parameters/Slug'
- { name: media_type, in: query, required: false, schema: { type: string, enum: [image, video, text, application, audio] } }
- { name: mime_type, in: query, required: false, schema: { type: string } }
- { name: parent, in: query, required: false, schema: { type: array, items: { type: integer } } }
responses:
'200':
description: A page of attachments.
headers:
X-WP-Total: { $ref: '#/components/headers/XWPTotal' }
X-WP-TotalPages: { $ref: '#/components/headers/XWPTotalPages' }
content:
application/json:
schema: { type: array, items: { $ref: '#/components/schemas/MediaItem' } }
'400':
$ref: '#/components/responses/InvalidParam'
/wp/v2/media/{id}:
get:
tags: [media]
operationId: getMediaItem
summary: Get a single media attachment
parameters:
- $ref: '#/components/parameters/IdPath'
- $ref: '#/components/parameters/Context'
responses:
'200':
description: The attachment.
content:
application/json:
schema: { $ref: '#/components/schemas/MediaItem' }
'404':
$ref: '#/components/responses/NotFound'
/wp/v2/team:
get:
tags: [team]
operationId: listTeamMembers
summary: List team profiles
description: >-
The `team` custom post type — leadership, board and scientific advisers.
9 published at harvest time, filed under 4 `team-department` terms.
parameters:
- $ref: '#/components/parameters/Context'
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/PerPage'
- $ref: '#/components/parameters/Search'
- $ref: '#/components/parameters/Order'
- $ref: '#/components/parameters/Slug'
- { name: team-department, in: query, required: false, description: 'Limit to these team-department term IDs.', schema: { type: array, items: { type: integer } } }
- { name: team-department_exclude, in: query, required: false, schema: { type: array, items: { type: integer } } }
responses:
'200':
description: A page of team profiles.
headers:
X-WP-Total: { $ref: '#/components/headers/XWPTotal' }
X-WP-TotalPages: { $ref: '#/components/headers/XWPTotalPages' }
content:
application/json:
schema: { type: array, items: { $ref: '#/components/schemas/TeamMember' } }
'400':
$ref: '#/components/responses/InvalidParam'
/wp/v2/team/{id}:
get:
tags: [team]
operationId: getTeamMember
summary: Get a single team profile
parameters:
- $ref: '#/components/parameters/IdPath'
- $ref: '#/components/parameters/Context'
responses:
'200':
description: The team profile.
content:
application/json:
schema: { $ref: '#/components/schemas/TeamMember' }
'404':
$ref: '#/components/responses/NotFound'
/wp/v2/categories:
get:
tags: [taxonomy]
operationId: listCategories
summary: List post categories
description: 7 categories registered at harvest time.
parameters:
- $ref: '#/components/parameters/Context'
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/PerPage'
- $ref: '#/components/parameters/Search'
- $ref: '#/components/parameters/Order'
- $ref: '#/components/parameters/Slug'
- { name: hide_empty, in: query, required: false, schema: { type: boolean, default: false } }
- { name: parent, in: query, required: false, schema: { type: integer } }
- { name: post, in: query, required: false, schema: { type: integer } }
responses:
'200':
description: A page of categories.
headers:
X-WP-Total: { $ref: '#/components/headers/XWPTotal' }
X-WP-TotalPages: { $ref: '#/components/headers/XWPTotalPages' }
content:
application/json:
schema: { type: array, items: { $ref: '#/components/schemas/Term' } }
'400':
$ref: '#/components/responses/InvalidParam'
/wp/v2/categories/{id}:
get:
tags: [taxonomy]
operationId: getCategory
summary: Get a single category
parameters:
- $ref: '#/components/parameters/IdPath'
- $ref: '#/components/parameters/Context'
responses:
'200':
description: The category term.
content:
application/json:
schema: { $ref: '#/components/schemas/Term' }
'404':
$ref: '#/components/responses/NotFound'
/wp/v2/team-department:
get:
tags: [taxonomy]
operationId: listTeamDepartments
summary: List team departments
description: 4 department terms registered at harvest time, including Leadership (5 members).
parameters:
- $ref: '#/components/parameters/Context'
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/PerPage'
- $ref: '#/components/parameters/Search'
- $ref: '#/components/parameters/Slug'
- { name: hide_empty, in: query, required: false, schema: { type: boolean, default: false } }
- { name: post, in: query, required: false, schema: { type: integer } }
responses:
'200':
description: A page of department terms.
headers:
X-WP-Total: { $ref: '#/components/headers/XWPTotal' }
X-WP-TotalPages: { $ref: '#/components/headers/XWPTotalPages' }
content:
application/json:
schema: { type: array, items: { $ref: '#/components/schemas/Term' } }
'400':
$ref: '#/components/responses/InvalidParam'
/wp/v2/team-department/{id}:
get:
tags: [taxonomy]
operationId: getTeamDepartment
summary: Get a single team department
parameters:
- $ref: '#/components/parameters/IdPath'
- $ref: '#/components/parameters/Context'
responses:
'200':
description: The department term.
content:
application/json:
schema: { $ref: '#/components/schemas/Term' }
'404':
$ref: '#/components/responses/NotFound'
/wp/v2/comments:
get:
tags: [comments]
operationId: listComments
summary: List comments
description: Registered and anonymously reachable, but empty — X-WP-Total was 0 at harvest time.
parameters:
- $ref: '#/components/parameters/Context'
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/PerPage'
- $ref: '#/components/parameters/Search'
- $ref: '#/components/parameters/Order'
- { name: post, in: query, required: false, schema: { type: array, items: { type: integer } } }
- { name: parent, in: query, required: false, schema: { type: array, items: { type: integer } } }
responses:
'200':
description: A page of comments (empty on this deployment).
headers:
X-WP-Total: { $ref: '#/components/headers/XWPTotal' }
X-WP-TotalPages: { $ref: '#/components/headers/XWPTotalPages' }
content:
application/json:
schema: { type: array, items: { type: object } }
'400':
$ref: '#/components/responses/InvalidParam'
/wp/v2/users:
get:
tags: [users]
operationId: listUsers
summary: List authors
description: >-
4 author records at harvest time. Anonymously readable and returns WordPress account display
names and slugs. Recorded because it is served, not because it is documented — see
conventions/jnana-therapeutics-conventions.yml.
parameters:
- $ref: '#/components/parameters/Context'
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/PerPage'
- $ref: '#/components/parameters/Search'
- $ref: '#/components/parameters/Order'
- $ref: '#/components/parameters/Slug'
- { name: has_published_posts, in: query, required: false, schema: { type: boolean } }
responses:
'200':
description: A page of author records.
headers:
X-WP-Total: { $ref: '#/components/headers/XWPTotal' }
X-WP-TotalPages: { $ref: '#/components/headers/XWPTotalPages' }
content:
application/json:
schema: { type: array, items: { $ref: '#/components/schemas/User' } }
'400':
$ref: '#/components/responses/InvalidParam'
/wp/v2/users/{id}:
get:
tags: [users]
operationId: getUser
summary: Get a single author
parameters:
- $ref: '#/components/parameters/IdPath'
- $ref: '#/components/parameters/Context'
responses:
'200':
description: The author record.
content:
application/json:
schema: { $ref: '#/components/schemas/User' }
'404':
$ref: '#/components/responses/NotFound'
/wp/v2/search:
get:
tags: [search]
operationId: searchContent
summary: Search published content
description: Cross-content search across published objects. 73 objects indexed at harvest time.
parameters:
- $ref: '#/components/parameters/Context'
- $ref: '#/components/parameters/Page'
- $ref: '#/components/parameters/PerPage'
- $ref: '#/components/parameters/Search'
- { name: type, in: query, required: false, schema: { type: string, enum: [post, term, post-format], default: post } }
- { name: subtype, in: query, required: false, schema: { type: array, items: { type: string }, default: [any] } }
responses:
'200':
description: A page of search results.
headers:
X-WP-Total: { $ref: '#/components/headers/XWPTotal' }
X-WP-TotalPages: { $ref: '#/components/headers/XWPTotalPages' }
content:
application/json:
schema: { type: array, items: { $ref: '#/components/schemas/SearchResult' } }
'400':
$ref: '#/components/responses/InvalidParam'
/wp/v2/types:
get:
tags: [discovery]
operationId: listTypes
summary: List registered post types
description: >-
12 types registered — post, page, attachment, nav_menu_item, wp_block, wp_template,
wp_template_part, wp_global_styles, wp_navigation, wp_font_family, wp_font_face and the
custom `team` type.
parameters:
- $ref: '#/components/parameters/Context'
responses:
'200':
description: A map of post types keyed by slug.
content:
application/json:
schema: { type: object, additionalProperties: { $ref: '#/components/schemas/PostType' } }
/wp/v2/types/{type}:
get:
tags: [discovery]
operationId: getType
summary: Get a single post type
parameters:
- { name: type, in: path, required: true, schema: { type: string } }
- $ref: '#/components/parameters/Context'
responses:
'200':
description: The post type document.
content:
application/json:
schema: { $ref: '#/components/schemas/PostType' }
'404':
$ref: '#/components/responses/NotFound'
/wp/v2/taxonomies:
get:
tags: [discovery]
operationId: listTaxonomies
summary: List registered taxonomies
description: 4 taxonomies registered — category, nav_menu, wp_pattern_category and the custom team-department.
parameters:
- $ref: '#/components/parameters/Context'
- { name: type, in: query, required: false, schema: { type: string } }
responses:
'200':
description: A map of taxonomies keyed by slug.
content:
application/json:
schema: { type: object, additionalProperties: { type: object } }
/wp/v2/statuses:
get:
tags: [discovery]
operationId: listStatuses
summary: List registered post statuses
parameters:
- $ref: '#/components/parameters/Context'
responses:
'200':
description: A map of post statuses keyed by slug.
content:
application/json:
schema: { type: object, additionalProperties: { type: object } }
/oembed/1.0/embed:
get:
tags: [oembed]
operationId: getOembed
summary: Get an oEmbed 1.0 response for a site URL
description: oEmbed 1.0 rich provider response for any www.jnanatx.com URL.
parameters:
- { name: url, in: query, required: true, schema: { type: string, format: uri } }
- { name: format, in: query, required: false, schema: { type: string, enum: [json, xml], default: json } }
- { name: maxwidth, in: query, required: false, schema: { type: integer, default: 600 } }
responses:
'200':
description: The oEmbed document.
content:
application/json:
schema: { $ref: '#/components/schemas/Oembed' }
'404':
$ref: '#/components/responses/NotFound'
/yoast/v1/get_head:
get:
tags: [seo]
operationId: getYoastHead
summary: Get the Yoast SEO head metadata for a URL
description: >-
Returns the rendered `<head>` SEO block Yoast SEO (v28.3 at harvest time) emits for the
given site URL — title, robots directives, canonical, Open Graph, Twitter card and
schema.org JSON-LD.
parameters:
- { name: url, in: query, required: true, schema: { type: string, format: uri } }
responses:
'200':
description: The head metadata document.
content:
application/json:
schema:
type: object
properties:
html: { type: string }
json: { type: object }
'404':
$ref: '#/components/responses/NotFound'
/genesis/v1/reading-settings:
get:
tags: [theme]
operationId: getGenesisReadingSettings
summary: Get the Genesis reading settings
description: Front-page configuration — show_on_front, page_on_front, page_for_posts.
responses:
'200':
description: The reading settings document.
content:
application/json:
schema:
type: object
properties:
show_on_front: { type: string }
page_on_front: { type: integer }
page_for_posts: { type: integer }
/genesis/v1/breadcrumbs:
get:
tags: [theme]
operationId: getGenesisBreadcrumbs
summary: Get the Genesis breadcrumb trail
description: Returns an empty array on this deployment.
responses:
'200':
description: The breadcrumb array.
content:
application/json:
schema: { type: array, items: { type: object } }
components:
headers:
XWPTotal:
description: Total number of items in the collection.
schema: { type: integer }
XWPTotalPages:
description: Total number of pages available at the current per_page.
schema: { type: integer }
LinkPagination:
description: RFC 8288 Link header carrying rel="next" and rel="prev".
schema: { type: string }
parameters:
Context:
name: context
in: query
required: false
description: Scope under which the request is made; determines fields present in the response. `edit` requires authentication.
schema: { type: string, enum: [view, embed, edit], default: view }
Page:
name: page
in: query
required: false
schema: { type: integer, minimum: 1, default: 1 }
PerPage:
name: per_page
in: query
required: false
schema: { type: integer, minimum: 1, maximum: 100, default: 10 }
Search:
name: search
in: query
required: false
schema: { type: string }
Slug:
name: slug
in: query
required: false
schema: { type: array, items: { type: string } }
Order:
name: order
in: query
required: false
schema: { type: string, enum: [asc, desc], default: desc }
Offset:
name: offset
in: query
required: false
schema: { type: integer }
Exclude:
name: exclude
in: query
required: false
schema: { type: array, items: { type: integer } }
Include:
name: include
in: query
required: false
schema: { type: array, items: { type: integer } }
After:
name: after
in: query
required: false
schema: { type: string, format: date-time }
Before:
name: before
in: query
required: false
schema: { type: string, format: date-time }
ModifiedAfter:
name: modified_after
in: query
required: false
schema: { type: string, format: date-time }
ModifiedBefore:
name: modified_before
in: query
required: false
schema: { type: string, format: date-time }
IdPath:
name: id
in: path
required: true
description: Unique identifier for the object.
schema: { type: integer }
responses:
InvalidParam:
description: A supplied parameter failed validation.
content:
application/json:
schema: { $ref: '#/components/schemas/Error' }
examples:
invalidParam:
value:
code: rest_invalid_param
message: 'Invalid parameter(s): per_page'
data: { status: 400 }
Forbidden:
description: The caller is not permitted to perform this request anonymously.
content:
application/json:
schema: { $ref: '#/components/schemas/Error' }
examples:
forbidden:
value:
code: rest_forbidden
message: 'Sorry, you are not allowed to do that.'
data: { status: 401 }
NotFound:
description: No route matched, or the object does not exist.
content:
application/json:
schema: { $ref: '#/components/schemas/Error' }
examples:
noRoute:
value:
code: rest_no_route
message: 'No route was found matching the URL and request method.'
data: { status: 404 }
schemas:
Error:
type: object
description: The WordPress REST error envelope. Not RFC 9457 — see errors/jnana-therapeutics-problem-types.yml.
required: [code, message, data]
properties:
code: { type: string, description: Machine-readable error slug. }
message: { type: string, description: Human-readable message. }
data:
type: object
properties:
status: { type: integer }
params: { type: object }
details: { type: object }
RenderedText:
type: object
properties:
rendered: { type: string }
protected: { type: boolean }
ApiIndex:
type: object
properties:
name: { type: string }
description: { type: string }
url: { type: string, format: uri }
home: { type: string, format: uri }
gmt_offset: { type: number }
timezone_string: { type: string }
namespaces: { type: array, items: { type: string } }
authentication: { type: object }
routes: { type: object }
site_icon_url: { type: string, format: uri }
Post:
type: object
properties:
id: { type: integer }
date: { type: string, format: date-time }
date_gmt: { type: string, format: date-time }
guid: { $ref: '#/components/schemas/RenderedText' }
modified: { type: string, format: date-time }
modified_gmt: { type: string, format: date-time }
slug: { type: string }
status: { type: string }
type: { type: string, const: post }
link: { type: string, format: uri }
title: { $ref: '#/components/schemas/RenderedText' }
content: { $ref: '#/components/schemas/RenderedText' }
excerpt: { $ref: '#/components/schemas/RenderedText' }
author: { type: integer, description: 'User id — see /wp/v2/users/{id}.' }
featured_media: { type: integer, description: 'Attachment id — see /wp/v2/media/{id}.' }
categories: { type: array, items: { type: integer }, description: 'Category term ids — see /wp/v2/categories/{id}.' }
yoast_head: { type: string }
yoast_head_json: { type: object }
_links: { type: object }
Page:
type: object
properties:
id: { type: integer }
date: { type: string, format: date-time }
modified: { type: string, format: date-time }
slug: { type: string }
status: { type: string }
type: { type: string, const: page }
link: { type: string, format: uri }
title: { $ref: '#/components/schemas/RenderedText' }
content: { $ref: '#/components/schemas/RenderedText' }
excerpt: { $ref: '#/components/schemas/RenderedText' }
author: { type: integer }
parent: { type: integer, description: 'Parent pa
# --- truncated at 32 KB (35 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/jnana-therapeutics/refs/heads/main/openapi/jnana-therapeutics-content-openapi.yml