Skip to content

feat!: regenerate SDK on fern-python-sdk@5.14.20 with TTS-only surface#16

Merged
luke-speechify merged 5 commits into
masterfrom
sdk-release
Jun 22, 2026
Merged

feat!: regenerate SDK on fern-python-sdk@5.14.20 with TTS-only surface#16
luke-speechify merged 5 commits into
masterfrom
sdk-release

Conversation

@luke-speechify

Copy link
Copy Markdown
Collaborator

Regenerated on the current Speechify spec with the latest generator (fern-python-sdk@5.14.20). Brings the SDK shape in line with industry conventions (api_key=, flat client.audio.* namespace) and unlocks the async client + raw-response accessor patterns that come free with the 5.x generator line.

Voice-agents methods and types are not exported from this release. The voice-agents API is public over HTTP today, but has never shipped in speechify-api PyPI releases — the SDK is deliberately scoped to the stable TTS surface (audio.*, voices.*). Voice-agents methods will be added in a future release once that surface is locked.

What changed

  • Auth kwarg renamed. Speechify(token=...) is now Speechify(api_key=...). The SPEECHIFY_API_KEY environment variable continues to work without change.
  • Method namespace flattened. client.tts.audio.speech(...)client.audio.speech(...); client.tts.voices.list()client.voices.list(); and so on across all six methods. The tts. intermediate namespace has been removed so SDK paths mirror the underlying URL paths (/v1/audio/..., /v1/voices/...).
  • livekit runtime dependency removed. It was only required by voice-agents helpers; TTS doesn't use it.
  • Cross-major generator bump (fern-python-sdk@4.x5.x). Internal code structure and some private helpers have changed shape. Public method signatures on audio.speech, audio.stream, voices.list / get / create / delete / download_sample are unchanged from their pre-flatten signatures except for the namespace path.

New in this release

  • AsyncSpeechify async client with the same method surface as the sync client.
  • .with_raw_response accessor on every sub-client for direct access to the underlying HTTP response — e.g. client.audio.with_raw_response.speech(...).
  • Better docstrings on audio.speech and audio.stream documenting the JSON-vs-raw-bytes response distinction between the two endpoints, plus the audio/pcmaudio/L16 Content-Type asymmetry on streaming (24 kHz mono LE PCM).

Release

This PR is the regenerated SDK only. Once merged into master, release-please will open a release PR that bumps the version (to 2.0.0) and updates CHANGELOG.md. Merging the release PR triggers the publish workflow to PyPI.

BREAKING CHANGE: Speechify(token=...) is now Speechify(api_key=...). The tts. namespace has been removed — call sites move from client.tts.audio.speech(...) to client.audio.speech(...) and from client.tts.voices.X to client.voices.X. The livekit extra-dependency has been removed; if you were importing it transitively through speechify-api, install it explicitly. Generator-line crossed 4.x5.x, so internal/private code paths have moved.

fern-api Bot and others added 5 commits June 19, 2026 19:13
The 5.x generator writes pyproject.toml with python = "^3.10"; the
workflow's setup-python step needs to match or poetry install fails
with 'currently activated Python version 3.8.18 is not supported by
the project (^3.10)'.
@luke-speechify luke-speechify merged commit 2ebb0a5 into master Jun 22, 2026
4 checks passed
luke-speechify pushed a commit that referenced this pull request Jun 22, 2026
🤖 I have created a release *beep* *boop*
---


##
[2.0.0](1.2.3...2.0.0)
(2026-06-22)


### ⚠ BREAKING CHANGES

* `Speechify(token=...)` is now `Speechify(api_key=...)`. The `tts.`
namespace has been removed — call sites move from
`client.tts.audio.speech(...)` to `client.audio.speech(...)` and from
`client.tts.voices.X` to `client.voices.X`. The `livekit`
extra-dependency has been removed; if you were importing it transitively
through `speechify-api`, install it explicitly. Generator-line crossed
`4.x` → `5.x`, so internal/private code paths have moved.

### Features

* regenerate SDK on fern-python-sdk@5.14.20 with TTS-only surface
([#16](#16))
([2ebb0a5](2ebb0a5))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants