Bluejay Therapeutics · OpenAPI Overlay 1.0.0

API Evangelist enhancements for the Bluejay Therapeutics Content API

10 actions 10 updates update extends openapi/bluejay-therapeutics-content-openapi.yml
Derived by API Evangelist Built from the contracts Bluejay Therapeutics publishes. Bluejay Therapeutics did not publish this file.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-datasetx-apievangelist-provenancex-apievangelist-verifiedx-apievangelist-verificationx-apievangelist-provider-publishes-specx-apievangelist-corporate-statusx-apievangelist-surface-classx-apievangelist-surface-note

Targets 8

$.info
$.servers[0]
$.paths['/wp/v2/posts'].get
$.paths['/wp/v2/pages'].get
$.paths['/wp/v2/media'].get
$.components.schemas.Error
$.components.schemas.Post.properties.guid
$.components.schemas.HalLinks

OpenAPI Overlay

bluejay-therapeutics-content-overlay.yaml Raw ↑
overlay: 1.0.0
info:
  title: API Evangelist enhancements for the Bluejay Therapeutics Content API
  version: 1.0.0
  x-generated: '2026-08-07'
  x-method: generated
  x-source: >-
    Enhancements applied by the API Evangelist enrichment pipeline on top of the OpenAPI derived
    from the WordPress route index at https://bluejaytx.com/wp-json/. The provider publishes no
    OpenAPI of its own, so there is no upstream document to preserve unmodified; this overlay
    records what API Evangelist added on top of the mechanical derivation, so the two remain
    separable on re-runs.
extends: openapi/bluejay-therapeutics-content-openapi.yml
actions:
- target: $.info
  description: >-
    Provenance and posture. Marks the document as derived-and-verified rather than provider-issued,
    and records that this surface belongs to an acquired company.
  update:
    x-apievangelist-provenance: derived-from-route-index
    x-apievangelist-verified: '2026-08-07'
    x-apievangelist-verification: >-
      Each of the 26 operations was individually called anonymously and returned 200 before being
      modelled. Routes returning 401/403/404 were excluded rather than documented optimistically.
    x-apievangelist-provider-publishes-spec: false
    x-apievangelist-corporate-status: >-
      Acquired by Mirum Pharmaceuticals, completed 2026-01-26. Content frozen; no announced end of
      life for this surface.
    x-apievangelist-surface-class: incidental-cms
    x-apievangelist-surface-note: >-
      This is a CMS content surface, not a product API. Bluejay Therapeutics never marketed a
      developer program. It is catalogued because it is real, public, machine-readable and — after
      the site teardown — the most complete public record of the company that remains.

- target: $.info
  description: Coverage accounting — what was deliberately left out and why.
  update:
    x-apievangelist-coverage:
      routes_in_index: 372
      namespaces_in_index: 17
      operations_modelled: 26
      excluded_401: >-
        settings, themes, plugins, menus, menu-locations, widgets, block-types, templates,
        font-collections, icons, oembed proxy, all aioseo/v1, all elementor/v1, all
        wp-site-health/v1, all wp-abilities/v1
      excluded_403: contact-form-7 contact-forms
      excluded_write_methods: >-
        Every POST/PUT/PATCH/DELETE endpoint in the index is capability-gated and unreachable
        anonymously; none is modelled.
      excluded_pii:
        collection: /wp/v2/users
        status: 200
        reason: >-
          Returns five named author records anonymously. Excluded under the API Evangelist
          enrichment PII guardrail — documented as an exposure in conventions/, never packaged as
          a capability.

- target: $.info
  description: >-
    Global query parameters the WordPress controller honours but the route index does not declare,
    so any spec generated purely from the index would miss them.
  update:
    x-apievangelist-undeclared-parameters:
    - name: _fields
      effect: Comma-separated sparse fieldset; trims the response to named fields.
      why_it_matters: >-
        Full post objects run to ~15 KB because content.rendered carries the entire press release.
        _fields is the single highest-leverage optimisation on this API.
    - name: _embed
      effect: Inlines author, featured media and terms into an _embedded block.
      caution: Pulls author records — personal data — into the payload.

- target: $.servers[0]
  description: Runtime posture of the single production server.
  update:
    x-apievangelist-runtime:
      tls: TLSv1.3
      hsts: false
      dnssec: true
      caa: false
      dmarc: false
      host: WP Engine (nginx)
      cors: 'Access-Control-Allow-Headers: Authorization, X-WP-Nonce, Content-Type'
      rate_limit_headers: none observed
      advisory_throttle: 'robots.txt Crawl-delay: 10'

- target: $.paths['/wp/v2/posts'].get
  description: >-
    Flag the archive-index recipe on the operation that matters most, and record the observed size
    of the collection.
  update:
    x-apievangelist-dataset:
      items: 35
      date_range: '2021-08-12 to 2025-12-08'
      composition: '26 press releases, 8 publications, 1 uncategorised'
      frozen: true
      frozen_since: '2025-12-08'
    x-apievangelist-recipe: >-
      GET /wp/v2/posts?per_page=100&_fields=id,slug,date,title,link,categories returns the whole
      archive index in a single request. Fetch content only for the items you actually need.

- target: $.paths['/wp/v2/pages'].get
  description: Record why this collection is nearly empty, so the count is not read as a fetch failure.
  update:
    x-apievangelist-dataset:
      items: 1
      note: >-
        Collapsed to a single acquisition-notice page (id 606) when the Mirum Pharmaceuticals
        acquisition closed on 2026-01-26. The prior page tree was deleted and those paths now 404.

- target: $.paths['/wp/v2/media'].get
  update:
    x-apievangelist-dataset:
      items: 99
      note: >-
        Mixes press-release PDFs and conference poster/presentation decks with site chrome. Filter
        with mime_type=application/pdf to isolate the substantive documents.

- target: $.components.schemas.Error
  description: State plainly that this is not RFC 9457, so an agent does not assume problem+json.
  update:
    x-apievangelist-error-format: wordpress-rest-error
    x-apievangelist-rfc9457: false
    x-apievangelist-note: >-
      Capability failures are inconsistent across plugin families — WordPress core returns 401,
      Contact Form 7 returns 403 for the equivalent denial. Branch on `code`, not on status.
    x-apievangelist-catalog: errors/bluejay-therapeutics-problem-types.yml

- target: $.components.schemas.Post.properties.guid
  description: Warn that guid is not a resolvable URL and leaks the staging hostname.
  update:
    x-apievangelist-warning: >-
      guid.rendered is a frozen internal identifier of the form
      https://bluejaytxstg.wpenginepowered.com/?p={id}, pointing at the WP Engine STAGING host. It
      is not resolvable and must never be used as a link. Use `link` for the permalink.

- target: $.components.schemas.HalLinks
  update:
    x-apievangelist-traversal: >-
      Preferred navigation mechanism. Follow _links rather than building URLs; the curies entry
      expands the wp: prefix to https://api.w.org/{rel}.

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.
All 92 tools →

Call it yourself

curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/bluejay-therapeutics-content-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.