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
Generated by API Evangelist Written by API Evangelist tooling for Bluejay Therapeutics's API. It is a proposal applied on top of the contract, not a document Bluejay Therapeutics publishes.
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}.