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 `` 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 page id.' } menu_order: { type: integer } featured_media: { type: integer } _links: { type: object } MediaItem: type: object properties: id: { type: integer } date: { type: string, format: date-time } slug: { type: string } type: { type: string, const: attachment } link: { type: string, format: uri } title: { $ref: '#/components/schemas/RenderedText' } author: { type: integer } post: { type: integer, description: 'Parent object id this attachment is attached to.' } media_type: { type: string } mime_type: { type: string } source_url: { type: string, format: uri } media_details: { type: object } alt_text: { type: string } _links: { type: object } TeamMember: 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: team } link: { type: string, format: uri } title: { $ref: '#/components/schemas/RenderedText' } content: { $ref: '#/components/schemas/RenderedText' } featured_media: { type: integer } team-department: { type: array, items: { type: integer }, description: 'team-department term ids.' } _links: { type: object } Term: type: object properties: id: { type: integer } count: { type: integer } description: { type: string } link: { type: string, format: uri } name: { type: string } slug: { type: string } taxonomy: { type: string } parent: { type: integer } meta: { type: array, items: { type: object } } _links: { type: object } User: type: object properties: id: { type: integer } name: { type: string } url: { type: string } description: { type: string } link: { type: string, format: uri } slug: { type: string } avatar_urls: { type: object } _links: { type: object } SearchResult: type: object properties: id: { type: integer } title: { type: string } url: { type: string, format: uri } type: { type: string } subtype: { type: string } _links: { type: object } PostType: type: object properties: name: { type: string } slug: { type: string } description: { type: string } hierarchical: { type: boolean } has_archive: { type: boolean } rest_base: { type: string } rest_namespace: { type: string } taxonomies: { type: array, items: { type: string } } _links: { type: object } Oembed: type: object description: oEmbed 1.0 rich response. properties: version: { type: string, const: '1.0' } provider_name: { type: string } provider_url: { type: string, format: uri } author_name: { type: string } author_url: { type: string, format: uri } title: { type: string } type: { type: string } width: { type: integer } height: { type: integer } html: { type: string }