Другой дубль строки
Голос прочтёт строку иначе; все дубли хранятся.
POST /segments/{segment_id}/take · озвучка
new — новый дубль: строка становится отдельным куском и озвучивается заново (списывается как новый звук).
set — вернуться к сделанному дублю по номеру (бесплатно, звук уже есть). Чтобы дубль попал в запись главы — озвучьте главу.
Параметры пути
| Параметр | Что это |
|---|---|
segment_id |
Id строки |
Тело запроса
JSON, заголовок content-type: application/json.
| Поле | Тип | Обязательно | Что это |
|---|---|---|---|
action |
new / set |
да | Новый дубль или выбрать готовый |
take |
число | для set |
Номер дубля: 0 — первый |
Что в ответе
| Поле | Что это |
|---|---|
segments[].delivery.take |
Выбранный дубль |
segments[].delivery.takes |
Сколько дублей сделано |
curl -X POST "https://golosar-kniga.tech/api/v1/segments/$SEGMENT_ID/take" \
-H "x-api-key: $KEY" \
-H "content-type: application/json" \
-d '{"action": "new"}'
import os, requests
API = "https://golosar-kniga.tech/api/v1"
H = {"x-api-key": os.environ["GOLOSAR_KEY"]}
segment_id = "01a134d0-ddbf-7616-8ddc-f4b77800ae46"
r = requests.post(f"{API}/segments/{segment_id}/take", headers=H, json={"action": "new"})
r.raise_for_status()
print(r.json())
const API = "https://golosar-kniga.tech/api/v1";
const H = { "x-api-key": process.env.GOLOSAR_KEY, "content-type": "application/json" };
const segmentId = "01a134d0-ddbf-7616-8ddc-f4b77800ae46";
const r = await fetch(`${API}/segments/${segmentId}/take`, { method: "POST", headers: H, body: JSON.stringify({"action": "new"}) });
if (!r.ok) throw new Error(await r.text());
console.log(await r.json());
json Ответ 200
{
"chapter": {
"id": "01a134d0-ddb7-72aa-b96c-967b596362fe",
"status": "ready",
"…": "…"
},
"segments": [
{
"id": "01a134d0-ddbf-7616-8ddc-f4b77800ae46",
"position": 1,
"text": "Кто здесь?",
"kind": "speech",
"block_id": 1,
"paragraph_id": 1,
"character_id": "01a134d0-ddae-7737-9ff4-0672f189eef8",
"skip_audio": false,
"pause_ms": null,
"confidence": 0.99,
"review": false,
"issue": "указано в тексте («спросила»)",
"emotion": null,
"speaker_source": "rules",
"emotion_source": "rules",
"stressed": null,
"delivery": {
"takes": 1,
"take": 1
},
"note": null,
"ai": null
}
],
"…": "та же глава, что в GET /chapters/{id}"
}