fish-audiolisted
Install: claude install-skill AceDataCloud/Skills
# Fish Audio — Text-to-Speech
Generate narration / voiceover through AceDataCloud's Fish Audio API.
> **Setup:** See [authentication](../_shared/authentication.md) for token setup.
## Quick Start
```bash
curl -X POST https://api.acedata.cloud/fish/tts \
-H "Authorization: ******ACEDATACLOUD_API_TOKEN" \
-H "Content-Type: application/json" \
-H "model: s2-pro" \
-d '{"text":"你好,欢迎使用 AceData Cloud。","reference_id":"d7900c21663f485ab63ebdb7e5905036","format":"mp3"}'
```
Synchronous responses return a direct audio URL:
```json
{"audio_url":"https://platform.r2.fish.audio/task/8a72ff9840234006a9f74cb2fa04f978.mp3"}
```
## Endpoints
| Endpoint | Purpose |
|----------|---------|
| `POST /fish/tts` | Text-to-speech generation |
| `GET /fish/model` | Browse/search public Fish reference voices |
| `GET /fish/model/{id}` | Fetch one reference voice by ID |
| `POST /fish/model` | Clone a voice — create a reference model from an audio URL |
| `POST /fish/tasks` | Poll async TTS jobs when `async: true` |
## Workflows
### 1. Find a reference voice
```bash
curl "https://api.acedata.cloud/fish/model?page_size=10&page_number=1&title=Marcus" \
-H "Authorization: ******ACEDATACLOUD_API_TOKEN"
```
The response includes `items[]` with public voice metadata such as `_id`, `title`,
`languages`, `tags`, `visibility`, and `state`. Use an item `_id` as
`reference_id` in TTS requests.
### 2. Text-to-Speech
```json
POST /fish/tts
Headers:
model: s2-pro
{
"text": "Your narrati