> ## Documentation Index
> Fetch the complete documentation index at: https://docs.r28.ai/charter/llms.txt
> Use this file to discover all available pages before exploring further.

# releases_generate_notes

> Generate release-note text from the pull requests merged since a previous tag. This creates nothing — GitHub returns a name and a markdown body and saves neither — so it is safe to call for a draft changelog. Pass the result to `releases_create` to publish it.

<div className="tool-route"><span className="tool-row-method" data-method="POST">POST</span><code>{"https://api.github.com/repos/{owner}/{repo}/releases/generate-notes"}</code></div>

```python github_releases_generate_notes.py theme={null}
from charter.packs import github

result = await github.releases_generate_notes.ainvoke({"owner": ..., "repo": ..., "tagName": ...})
```

<Note>
  Requires `repo`, `read:user`.
</Note>

## Path parameters

<div className="reference-table">
  | Field                                                         | Type     | Description                                                                              |
  | ------------------------------------------------------------- | -------- | ---------------------------------------------------------------------------------------- |
  | `owner` <span className="required" title="required">\*</span> | `string` | The account owner of the repository. The name is not case sensitive.                     |
  | `repo` <span className="required" title="required">\*</span>  | `string` | The name of the repository without the `.git` extension. The name is not case sensitive. |
</div>

## Body

<div className="reference-table">
  | Field                                                           | Type     | Description                                                                                                                                                                                                 |
  | --------------------------------------------------------------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | `tagName` <span className="required" title="required">\*</span> | `string` | The tag name for the release. This can be an existing tag or a new one.                                                                                                                                     |
  | `targetCommitish`                                               | `string` | Specifies the commitish value that will be the target for the release's tag. Required if the supplied `tag_name` does not reference an existing tag. Ignored if the `tag_name` already exists.              |
  | `previousTagName`                                               | `string` | The name of the previous tag to use as the starting point for the release notes. Use to manually specify the range for the set of changes considered as part of this release.                               |
  | `configurationFilePath`                                         | `string` | Specifies a path to a file in the repository containing configuration settings used for generating the release notes. Absent, GitHub uses `.github/release.yml` or `.github/release.yaml` if either exists. |
</div>
