Releases

Changelog entries between two versions of a package (upgrade intelligence)

Changed on

Given a package and a from/to version, returns the ordered release entries in the half-open range (from, to] — from exclusive (you have it), to inclusive — with summaries, breaking-change verdicts (#1696), and migration notes. One call instead of N changelog pages.

Reads already-ingested releases only (no live fetch). Resolution is read-only: an exact catalog source-slug match, then a non-materializing GitHub owner/repo coordinate match. An unresolvable package returns status: "unknown" with HTTP 200 — a valid answer, not an error; npm/PyPI names absent from the catalog resolve to unknown until the name→source map (#1345) lands. Wide ranges are truncated to a token budget (newest entries kept), flagged via truncated.

get/whats-changed

Request

  • Base URL: https://api.releases.sh
  • URL: https://api.releases.sh/whats-changed
  • Auth: none declared

Query parameters

packagestring required

Package identifier — a catalog source slug or a GitHub "owner/repo" coordinate.

fromstring required

Version you're upgrading FROM (exclusive).

tostring required

Version you're upgrading TO (inclusive).

ecosystem'npm' | 'pypi' | 'github'

Optional resolution hint. github enables the coordinate match for a bare owner/repo.

Response

Upgrade range (resolved or unknown — both are 200)

status'resolved' | 'unknown' required
packagestring required
ecosystem'npm' | 'pypi' | 'github' nullable required
fromstring required
tostring required
countnumber required
truncatedboolean required
truncatedAtTokensnumber

Changes

    • breaking

      the response property // became nullable for the status

    • breaking

      the response property // became nullable for the status

    • breaking

      the response property // became nullable for the status

    • breaking

      the response property // became nullable for the status

    • breaking

      the response property // became nullable for the status

    • breaking

      the response property // became nullable for the status

    • breaking

      the response property // became nullable for the status

    • info

      response property entries/items/migrationNotes list-of-types was narrowed by removing types null from media type application/json of response 200

    • info

      response property entries/items/publishedAt list-of-types was narrowed by removing types null from media type application/json of response 200

    • info

      response property entries/items/summary list-of-types was narrowed by removing types null from media type application/json of response 200

    • info

      response property entries/items/title list-of-types was narrowed by removing types null from media type application/json of response 200

    • info

      response property entries/items/url list-of-types was narrowed by removing types null from media type application/json of response 200

    • info

      response property entries/items/version list-of-types was narrowed by removing types null from media type application/json of response 200

    • info

      response property entries/items/webUrl list-of-types was narrowed by removing types null from media type application/json of response 200

    • warning

      added the new too_large enum value to the / response property for the response status