Kallyope Discovery API

Site-wide search and the registered post-type / taxonomy indexes.

Operations 5

GET / Get the REST API root index #
GET /wp/v2/types List registered post types #
GET /wp/v2/taxonomies List registered taxonomies #
GET /wp/v2/users List public authors #

Work with this as data

Every API 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 apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/kallyope-discovery-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

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.

OpenAPI Specification

kallyope-discovery-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Kallyope Content REST API (derived) Discovery API
  version: '2'
  summary: Anonymous read-only REST surface behind kallyope.com, exposing Kallyope's company news, site pages, media library and its first-party library of scientific documents (posters, presentations, publications and video) as JSON.
  description: 'Kallyope, Inc. runs kallyope.com on WordPress (hosted on Pantheon, fronted by Fastly)

    and exposes the WordPress REST API publicly at `https://kallyope.com/wp-json`. The

    route index registers **326 routes across 14 namespaces**; the publicly readable

    portion is the core `wp/v2` namespace, which Kallyope has extended with **first-party

    content models** registered through Custom Post Type UI:


    | Model | Kind | REST base | Observed items |

    |---|---|---|---|

    | `document` | custom post type | `/wp/v2/document` | 8 |

    | `program` | custom taxonomy | `/wp/v2/program` | 1 (`elismetrep`) |

    | `event` | custom taxonomy | `/wp/v2/event` | 2 congresses |

    | `content-type` | custom taxonomy | `/wp/v2/content-type` | 5 |

    | `document-type` | custom taxonomy | `/wp/v2/document-type` | 0 |


    A `document` is a piece of scientific communication — the AHS 2026 elismetrep poster

    and MOA presentation, for example — carrying `title`, `content`, `excerpt`,

    `featured_media` and term references into `program`, `event`, `content-type` and

    `document-type`. Alongside those sit the core `posts` (company news, 6 items),

    `pages` (9), `media` (215), `categories` (8), `users` (2), `search`, `types` and

    `taxonomies` collections.


    These endpoints require **no authentication** and returned real JSON payloads when

    probed on 2026-08-01. This is a content and marketing API, not a Klarity discovery

    platform API, a research-data API or a clinical API — Kallyope publishes no developer

    portal, no API reference, no SDKs, no CLI and no public GitHub organization, and the

    surface exists as a byproduct of running WordPress rather than as a designed public

    contract. Responses are standard WordPress REST records, so field names follow

    WordPress internals (`id`, `slug`, `title.rendered`, `content.rendered`, `_links`,

    plus Yoast SEO''s `yoast_head` / `yoast_head_json`).


    Collections page with `page` / `per_page` (max 100) and report `X-WP-Total` and

    `X-WP-TotalPages`, with RFC 8288 `Link` rel="next"/"prev". Errors are the WordPress

    `{code, message, data.status}` envelope — not RFC 9457 problem+json.

    '
  contact:
    name: Kallyope, Inc.
    url: https://kallyope.com/contact/
  x-derived-by:
    organization: API Evangelist
    url: https://apievangelist.com
servers:
- url: https://kallyope.com/wp-json
  description: Production WordPress REST API root for kallyope.com
tags:
- name: Discovery
  description: Site-wide search and the registered post-type / taxonomy indexes.
paths:
  /:
    get:
      operationId: getApiIndex
      tags:
      - Discovery
      summary: Get the REST API root index
      description: Returns the WordPress REST API discovery document — site name, URL, the list of registered namespaces, every registered route with its methods and declared args, and the `authentication` block advertising application-password authorization.
      responses:
        '200':
          description: API root index
          content:
            application/json:
              schema:
                type: object
                properties:
                  name:
                    type: string
                  description:
                    type: string
                  url:
                    type: string
                    format: uri
                  namespaces:
                    type: array
                    items:
                      type: string
                  authentication:
                    type: object
                  routes:
                    type: object
  /wp/v2/search:
    get:
      operationId: search
      tags:
      - Discovery
      summary: Search across all public content
      description: 'Site-wide search returning lightweight `{id, title, url, type, subtype}` records across posts, pages and documents. Observed on 2026-08-01: 23 searchable items.'
      parameters:
      - name: context
        in: query
        description: Scope under which the request is made; determines fields present in response.
        schema:
          type: string
      - name: page
        in: query
        description: Current page of the collection.
        schema:
          type: integer
          default: 1
      - name: per_page
        in: query
        description: Maximum number of items to be returned in result set.
        schema:
          type: integer
          minimum: 1
          maximum: 100
          default: 10
      - name: search
        in: query
        description: Limit results to those matching a string.
        schema:
          type: string
      - name: type
        in: query
        description: Limit results to items of an object type.
        schema:
          type: string
      - name: subtype
        in: query
        description: Limit results to items of one or more object subtypes.
        schema:
          type: array
          items:
            type: string
      - name: exclude
        in: query
        description: Ensure result set excludes specific IDs.
        schema:
          type: array
          items:
            type: integer
      - name: include
        in: query
        description: Limit result set to specific IDs.
        schema:
          type: array
          items:
            type: integer
      responses:
        '200':
          description: A page of search results
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
                  properties:
                    id:
                      type: integer
                    title:
                      type: string
                    url:
                      type: string
                      format: uri
                    type:
                      type: string
                    subtype:
                      type: string
  /wp/v2/types:
    get:
      operationId: listTypes
      tags:
      - Discovery
      summary: List registered post types
      description: Returns every registered post type with its `rest_base`, `rest_namespace`, `taxonomies` and hierarchy flag — the machine-readable index of the content models this API exposes, including Kallyope's first-party `document` type.
      responses:
        '200':
          description: Map of post type name to post type descriptor
          content:
            application/json:
              schema:
                type: object
  /wp/v2/taxonomies:
    get:
      operationId: listTaxonomies
      tags:
      - Discovery
      summary: List registered taxonomies
      description: Returns every registered taxonomy with its `rest_base`, the post types it applies to, and hierarchy flag — including Kallyope's first-party `program`, `event`, `content-type` and `document-type` taxonomies.
      responses:
        '200':
          description: Map of taxonomy name to taxonomy descriptor
          content:
            application/json:
              schema:
                type: object
  /wp/v2/users:
    get:
      operationId: listUsers
      tags:
      - Discovery
      summary: List public authors
      description: 'Publicly readable author list (authors of published posts only). Observed on 2026-08-01: 2 users.'
      parameters:
      - $ref: '#/components/parameters/TermPage'
      - $ref: '#/components/parameters/TermPerPage'
      - $ref: '#/components/parameters/TermSearch'
      responses:
        '200':
          description: A page of users
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
components:
  parameters:
    TermPerPage:
      name: per_page
      in: query
      description: Maximum number of items to be returned in result set.
      schema:
        type: integer
        minimum: 1
        maximum: 100
        default: 10
    TermSearch:
      name: search
      in: query
      description: Limit results to those matching a string.
      schema:
        type: string
    TermPage:
      name: page
      in: query
      description: Current page of the collection.
      schema:
        type: integer
        default: 1
x-provenance:
  generated: '2026-08-01'
  method: derived
  source: https://kallyope.com/wp-json/
  note: Derived by API Evangelist from the live, anonymous WordPress REST API route index published at https://kallyope.com/wp-json/ on 2026-08-01, and from an observed HTTP GET of every path below. Kallyope, Inc. does not publish an OpenAPI description; this document describes only routes, query parameters and response shapes that were actually observed on the wire or declared verbatim in the route index. Query parameters are copied from the `args` block the route index publishes for each endpoint. Only the anonymously readable GET surface is described — the route index also registers POST/PUT/PATCH/DELETE on these collections plus 13 further plugin namespaces (ithemes-security, akismet, redirection, yoast, liquidweb/harbor, cptui, duplicate-post, regenerate-thumbnails, wp-site-health, wp-block-editor, wp-abilities, oembed), all of which require an authenticated WordPress session or application password and were not exercised. Nothing here is invented — where a shape was not observable it is left unconstrained rather than guessed.