Inworld TTS-1.5 Max
통합
모델 id
inworld-tts
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.ru/v1/run/inworld-tts?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"text": "Hello from Doitong. This is a short test sentence."
}'
# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.ru/v1/requests/REQUEST_ID?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY"
const API = "https://api.doitong.ru/v1";
const headers = {
"Authorization": "Bearer " + process.env.DOITONG_API_KEY,
"Content-Type": "application/json",
};
// Run the model; wait up to 20 s for the finished result in the same call
let res = await fetch(API + "/run/inworld-tts?wait=20", {
method: "POST",
headers,
body: JSON.stringify({
"text": "Hello from Doitong. This is a short test sentence."
}),
});
let request = await res.json();
if (!res.ok) throw new Error(request.error.code + ": " + request.error.message);
// Not finished yet: long-poll until it is
while (request.status === "queued" || request.status === "running") {
res = await fetch(API + "/requests/" + request.id + "?wait=20", { headers });
request = await res.json();
}
if (request.status !== "succeeded") throw new Error(JSON.stringify(request.error));
console.log(request.outputs.map((o) => o.url), request.cost.credits + " API credits ($" + request.cost.usd + ")");
import os
import requests
API = "https://api.doitong.ru/v1"
headers = {"Authorization": "Bearer " + os.environ["DOITONG_API_KEY"]}
payload = {
"text": "Hello from Doitong. This is a short test sentence.",
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/inworld-tts", params={"wait": 20}, json=payload, headers=headers)
request = r.json()
if not r.ok:
raise RuntimeError(request["error"]["code"] + ": " + request["error"]["message"])
# Not finished yet: long-poll until it is
while request["status"] in ("queued", "running"):
request = requests.get(API + "/requests/" + request["id"], params={"wait": 20}, headers=headers).json()
if request["status"] != "succeeded":
raise RuntimeError(request["error"])
print([o["url"] for o in request["outputs"]], request["cost"]["credits"], "API credits", "$" + request["cost"]["usd"])
# 1. Connect once (Claude Code; Cursor, VS Code, Claude Desktop: https://doitong.com/ko/developers/docs/mcp)
claude mcp add --transport http doitong-models https://api.doitong.ru/v1/mcp \
--header "Authorization: Bearer $DOITONG_API_KEY"
# 2. Your agent calls the "run" tool with:
{
"model_id": "inworld-tts",
"input": {
"text": "Hello from Doitong. This is a short test sentence."
}
}
Doitong API를 통해 Inworld TTS-1.5 Max 모델(inworld-tts)을 호출합니다. 에이전트용 문서: https://doitong.com/ko/developers/models/inworld-tts.md
POST https://api.doitong.ru/v1/run/inworld-tts?wait=20
Authorization: Bearer $DOITONG_API_KEY
Content-Type: application/json
{
"text": "Hello from Doitong. This is a short test sentence."
}
응답 상태가 "queued" 또는 "running"이면 "succeeded"가 될 때까지 GET https://api.doitong.ru/v1/requests/REQUEST_ID?wait=20을 폴링하세요. 파일은 outputs[].url에 있습니다. POST https://api.doitong.ru/v1/quote/inworld-tts에 동일한 본문을 보내면 실행 전에 정확한 가격을 반환합니다.
이 요청: $0.001 1 API 크레딧 · ≈ ₽0.11 이 페이지에서 실행
새 API 키입니다. 지금만 표시되며 이미 아래 코드와 API 키 필드에 입력되어 있습니다. 안전하게 보관하세요. 브라우저에서 실행되는 코드에 절대 넣지 마세요.
Inworld · 오디오
첫 번째 결과가 여기에 표시됩니다
아래에서 요청을 작성하고 API 키로 실행하세요. 출력은 스토리지에 복사되며, 영구 보관하거나 7일 동안 무료로 보관할 수 있습니다.
요청 만들기
컨트롤은 모델 스키마에서 생성됩니다. 값을 변경하면 코드와 가격이 업데이트됩니다.
POST
/run/inworld-tts?wait=20
견적 → $0.001
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.ru/v1/run/inworld-tts?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"text": "Hello from Doitong. This is a short test sentence."
}'
# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.ru/v1/requests/REQUEST_ID?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY"
const API = "https://api.doitong.ru/v1";
const headers = {
"Authorization": "Bearer " + process.env.DOITONG_API_KEY,
"Content-Type": "application/json",
};
// Run the model; wait up to 20 s for the finished result in the same call
let res = await fetch(API + "/run/inworld-tts?wait=20", {
method: "POST",
headers,
body: JSON.stringify({
"text": "Hello from Doitong. This is a short test sentence."
}),
});
let request = await res.json();
if (!res.ok) throw new Error(request.error.code + ": " + request.error.message);
// Not finished yet: long-poll until it is
while (request.status === "queued" || request.status === "running") {
res = await fetch(API + "/requests/" + request.id + "?wait=20", { headers });
request = await res.json();
}
if (request.status !== "succeeded") throw new Error(JSON.stringify(request.error));
console.log(request.outputs.map((o) => o.url), request.cost.credits + " API credits ($" + request.cost.usd + ")");
import os
import requests
API = "https://api.doitong.ru/v1"
headers = {"Authorization": "Bearer " + os.environ["DOITONG_API_KEY"]}
payload = {
"text": "Hello from Doitong. This is a short test sentence.",
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/inworld-tts", params={"wait": 20}, json=payload, headers=headers)
request = r.json()
if not r.ok:
raise RuntimeError(request["error"]["code"] + ": " + request["error"]["message"])
# Not finished yet: long-poll until it is
while request["status"] in ("queued", "running"):
request = requests.get(API + "/requests/" + request["id"], params={"wait": 20}, headers=headers).json()
if request["status"] != "succeeded":
raise RuntimeError(request["error"])
print([o["url"] for o in request["outputs"]], request["cost"]["credits"], "API credits", "$" + request["cost"]["usd"])
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "run",
"arguments": {
"model_id": "inworld-tts",
"input": {
"text": "Hello from Doitong. This is a short test sentence."
},
"wait_seconds": 20
}
}
}
Inworld TTS-1.5 Max 정보
`text`의 최대 2000자를 음성으로 변환합니다. `voice`는 이름이 지정된 113개 음성 중에서 선택하며 기본값은 Craig (en)입니다. `sample_rate_hertz`는 8000, 16000, 24000, 32000, 40000 또는 48000(기본값)으로 설정할 수 있습니다. 오디오 파일 하나를 반환합니다.
매개변수
이름유형
기본값허용됨
설명
text필수
유형string
≤ 2,000자
음성 합성용 텍스트로, 2000자로 제한됩니다.
voice선택 사항
유형enum
기본값Craig (en)
Loretta (en)Darlene (en)Marlene (en)Hank (en)Evelyn (en)Celeste (en)Pippa (en)Tessa (en)Liam (en)Callum (en)Hamish (en)Abby (en)Graham (en)Rupert (en)Mortimer (en)Snik (en)
+97개 더 보기
Anjali (en)Saanvi (en)Arjun (en)Claire (en)Oliver (en)Simon (en)Elliot (en)James (en)Serena (en)Gareth (en)Vinny (en)Lauren (en)Jessica (en)Ethan (en)Tyler (en)Jason (en)Chloe (en)Veronica (en)Victoria (en)Miranda (en)Sebastian (en)Victor (en)Malcolm (en)Kayla (en)Nate (en)Jake (en)Brian (en)Amina (en)Kelsey (en)Derek (en)Grant (en)Evan (en)Alex (en)Ashley (en)Craig (en)Deborah (en)Dennis (en)Edward (en)Elizabeth (en)Hades (en)Julia (en)Pixie (en)Mark (en)Olivia (en)Priya (en)Ronald (en)Sarah (en)Shaun (en)Theodore (en)Timothy (en)Wendy (en)Dominus (en)Hana (en)Clive (en)Carter (en)Blake (en)Luna (en)Yichen (zh)Xiaoyin (zh)Xinyi (zh)Jing (zh)Erik (nl)Katrien (nl)Lennart (nl)Lore (nl)Alain (fr)Hélène (fr)Mathieu (fr)Étienne (fr)Johanna (de)Josef (de)Gianni (it)Orietta (it)Asuka (ja)Satoshi (ja)Hyunwoo (ko)Minji (ko)Seojun (ko)Yoona (ko)Szymon (pl)Wojciech (pl)Heitor (pt)Maitê (pt)Diego (es)Lupita (es)Miguel (es)Rafael (es)Svetlana (ru)Elena (ru)Dmitry (ru)Nikolai (ru)Riya (hi)Manoj (hi)Yael (he)Oren (he)Nour (ar)Omar (ar)음성 합성에 사용할 음성입니다.
sample_rate_hertz선택 사항
유형enum
기본값48000
80001600024000320004000048000
출력 오디오의 샘플링 레이트로, 단위는 Hz입니다.
enable_safety_checker선택 사항
유형boolean
기본값true
호출자에게 권한이 있으면 false로 설정해 검사를 완화할 수 있습니다.
필수
출력
GET /requests/req_8k2m4q7x1z9c3v5b6n0p2r4t
{
"id": "req_8k2m4q7x1z9c3v5b6n0p2r4t",
"object": "request",
"model": "inworld-tts",
"status": "succeeded",
"created_at": "2026-10-20T12:00:00Z",
"started_at": "2026-10-20T12:00:02Z",
"completed_at": "2026-10-20T12:00:09Z",
"queue_position": null,
"cost": {
"credits": 1,
"usd": "0.001",
"charged": 1,
"refunded": 0
},
"input": {
"text": "Hello from Doitong. This is a short test sentence."
},
"output": {
"audio": {
"url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.mp3",
"content_type": "audio/mpeg",
"file_name": "0-output.mp3",
"file_size": 1843200
}
},
"outputs": [
{
"type": "audio",
"url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.mp3",
"content_type": "audio/mpeg",
"file_size": 1843200,
"duration": 12,
"stored": true
}
],
"error": null,
"metrics": {
"inference_seconds": 6.8
},
"urls": {
"self": "https://api.doitong.ru/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t",
"cancel": "https://api.doitong.ru/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t/cancel"
}
}
파일 보관 방식 선택모든 outputs[].url은 스토리지에 저장된 복사본입니다. 계정 설정 또는 ?storage=에 따라 영구 보관(GB-월 단위 과금)하거나 7일 동안 무료로 보관합니다.
모든 모델에서 동일한 구조이미지, 동영상, 오디오 모두 type, url, content_type, width, height 및 duration을 사용합니다. output은 모델 자체의 결과 객체입니다.
출력 필드
- audio
- object {url, content_type, file_name, file_size}생성으로 만들어진 오디오 파일입니다.
더 많은 모델: 텍스트를 음성으로
AI 에이전트용: 이 페이지의 Markdown 버전: https://doitong.com/ko/developers/models/inworld-tts.md. 모든 모델 및 가이드: https://doitong.com/developers/llms.txt