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

# Deprecations

> Deprecated and removed endpoints, and what to use instead

This page lists every endpoint that has been deprecated or removed from the Sunbird AI API, together with its replacement. Deprecated routes are **not** documented in the current API Reference — do not build new integrations against them.

## How deprecation works

* A **deprecated** route still responds, but every response carries `Deprecation`, `Sunset`, and `Link` headers. `Sunset` is the date after which the route will be removed; `Link` points at the replacement.
* A **removed** route returns `404`.
* Inspect these headers in your client and migrate before the sunset date. See [Error Handling](/guides/error-handling#deprecation-headers).

<Note>
  Reference pages for the older routes remain available under the **v1 · Deprecated** version in the sidebar dropdown, for teams still completing a migration.
</Note>

## Deprecated endpoints (still responding)

| Deprecated route                  | Use instead                        | Notes                                                                                                |
| :-------------------------------- | :--------------------------------- | :--------------------------------------------------------------------------------------------------- |
| `POST /tasks/stt`                 | `POST /tasks/audio/transcriptions` | Pass `language` explicitly (required). Speaker diarization is not available on the unified endpoint. |
| `POST /tasks/stt_from_gcs`        | `POST /tasks/audio/transcriptions` | Upload the file directly; `gcs_blob_name` is no longer accepted.                                     |
| `POST /tasks/org/stt`             | `POST /tasks/audio/transcriptions` | The organization workflow is not available on the unified endpoint.                                  |
| `POST /tasks/modal/stt`           | `POST /tasks/audio/transcriptions` | Same request shape minus `platform`/`adapter`/`whisper`.                                             |
| `POST /tasks/sunflower_inference` | `POST /tasks/chat/completions`     | OpenAI-compatible; send the instruction as messages.                                                 |
| `POST /tasks/sunflower_simple`    | `POST /tasks/chat/completions`     | A single instruction is a request with one `user` message.                                           |
| `POST /tasks/summarise`           | `POST /tasks/chat/completions`     | Use a summarization system prompt — see [Summarization](/guides/summarization).                      |

## Removed endpoints

These routes were removed in **v2.1** and now return `404`.

| Removed route                                                                                                        | Use instead                                               |
| :------------------------------------------------------------------------------------------------------------------- | :-------------------------------------------------------- |
| `POST /tasks/tts`, `POST /tasks/modal/tts`, `POST /tasks/runpod/tts`, `POST /tasks/modal/orpheus/tts`                | `POST /tasks/audio/speech`                                |
| `POST /tasks/modal/tts/stream`                                                                                       | `POST /tasks/audio/speech` with `response_mode: "stream"` |
| `POST /tasks/modal/tts/stream-with-url`                                                                              | `POST /tasks/audio/speech` with `response_mode: "both"`   |
| `POST /tasks/modal/orpheus/tts/batch`                                                                                | `POST /tasks/audio/speech/batch` (1–16 items)             |
| `GET /tasks/modal/tts/speakers`, `GET /tasks/modal/orpheus/speakers`, `GET /tasks/modal/orpheus/speakers/{language}` | `GET /tasks/voice/speakers` (optional `language`)         |
| `GET /tasks/modal/tts/refresh-url`                                                                                   | `GET /tasks/audio/speech/url`                             |

## Removed parameters and values

| Endpoint                           | Removed                                                                                              | Replacement                                                                                                       |
| :--------------------------------- | :--------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------- |
| `POST /tasks/audio/transcriptions` | `platform`, `adapter`, `whisper`, `recognise_speakers`, `org`, `gcs_blob_name` (rejected with `422`) | Send `audio`, `language`, and optionally `timestamps`.                                                            |
| `POST /tasks/audio/speech`         | `model`, `platform`, `max_new_audio_tokens`; the `spark-tts` model                                   | RunPod Orpheus is the only backend. Tune with `temperature`, `top_p`, `repetition_penalty`, `max_tokens`, `seed`. |
| `GET /tasks/voice/speakers`        | `model` query parameter                                                                              | Filter with `language` only.                                                                                      |
| `POST /tasks/chat/completions`     | `model: "Sunbird/Sunflower-14B"` (returns `400`)                                                     | `sunflower-14b` (default) or `sunflower-9b`.                                                                      |
