Guia rápido da API TTS
Este guia rápido mostra como integrar nossa API de conclusão de chat sem censura no seu pipeline TTS. Use o endpoint compatível com OpenAI para gerar scripts, legendas e diálogos sem recusa de conteúdo.
https://api.ttsapihub.com/v1
URL base e autenticação
Comece configurando seu cliente para apontar para nosso base URL: https://api.ttsapihub.com/v1. Nossa API é totalmente compatível com OpenAI, então você pode usar SDKs padrão apenas atualizando o base_url e fornecendo sua chave de API. A autenticação é feita por meio do cabeçalho Authorization com um token Bearer. Você gera uma chave exclusiva durante o cadastro na página Obter chave de API. Cada conta tem limite de uma chave ativa, que pode ser regenerada a qualquer momento. Seus prompts não são usados para treinamento, e nenhum número de telefone ou cartão de crédito é necessário para começar com o crédito de teste grátis.
Gerar texto com Chat Completions
Envie uma requisição POST /v1/chat/completions padrão para gerar texto. O ID do modelo a ser usado é uncensored. Este modelo é um LLM de pesos abertos ajustado para responder sem recusas de conteúdo para uso adulto legal, tornando-o ideal para roteiros criativos ou diálogos onde filtros corporativos podem bloquear seu conteúdo. Ele não gera áudio, imagens ou vídeo; ele produz texto puro para seu pipeline TTS processar. Você pode ajustar parâmetros como temperature e max_tokens conforme necessário. A API suporta chamada de funções para extração de dados estruturados, permitindo que você formate as respostas para seu aplicativo.
curl https://api.ttsapihub.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Write a blunt product review of a cheap VPN."}]
}'
Integração com SDK Python
Para desenvolvedores Python, o SDK oficial openai funciona imediatamente com configuração mínima. Inicialize o cliente com sua URL base e chave de API, depois chame chat.completions.create(). Esta abordagem permite aproveitar clientes compatíveis com OpenAI existentes enquanto se beneficia do nosso modelo sem censura. A resposta inclui o texto gerado, que você pode alimentar diretamente no seu mecanismo de síntese de fala. Lembre-se de que esta é uma API apenas de texto, então você cuida da geração de áudio separadamente no seu pipeline.
from openai import OpenAI
client = OpenAI(base_url="https://api.ttsapihub.com/v1", api_key="YOUR_KEY")
resp = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Summarise this thread without softening it."}],
)
print(resp.choices[0].message.content)
Integração com SDK Node.js
Desenvolvedores Node.js podem usar o pacote npm openai com a mesma configuração do Python. Defina o baseURL para nosso endpoint e forneça sua chave de API. Chame o endpoint de conclusões com o ID do modelo uncensored. Esta integração é direta e permite integrar nossa geração de texto diretamente em seus serviços TTS existentes da Node.js. A API responde com JSON padrão, facilitando a análise e o processamento do texto gerado para as necessidades do seu aplicativo.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.ttsapihub.com/v1", apiKey: process.env.API_KEY });
const resp = await client.chat.completions.create({
model: "uncensored",
messages: [{ role: "user", content: "Draft a villain monologue for my game." }],
});
console.log(resp.choices[0].message.content);
Respostas em streaming via SSE
Para menor latência, ative o streaming definindo stream: true em sua requisição. A API retorna Server-Sent Events (SSE) contendo pedaços incrementais de texto. Isso é particularmente útil para geração de conteúdo extenso, pois os usuários podem ver o texto aparecendo em tempo real. A resposta de streaming segue o formato padrão SSE da OpenAI, então você pode usar analisadores de stream existentes. Esta abordagem reduz os tempos de espera percebidos e permite que seu aplicativo exiba o texto conforme é gerado, melhorando a experiência do usuário para seu pipeline TTS.
stream = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Tell the story in second person."}],
stream=True,
)
for chunk in stream:
if chunk.choices and chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)
Limites, erros e janela de contexto
Sua chave de API está limitada a 300 requisições por minuto e um corpo de requisição de 8 MB. O modelo suporta uma janela de contexto de 100.000 tokens, permitindo roteiros ou documentos longos. Erros comuns incluem 401 (chave inválida), 402 (crédito insuficiente) e 429 (limite de requisições). Se você atingir o limite de requisições, implemente backoff exponencial. Os preços são transparentes: $0,25 por 1M tokens de entrada e $1,00 por 1M tokens de saída. Os créditos são pré-pagos, nunca expiram e recargas começam em $10. Uma nova conta recebe $0,50 em crédito de teste válido por 7 dias, sem necessidade de cartão. Limites de conteúdo bloqueiam apenas conteúdo sexual envolvendo menores; todos os outros tópicos adultos legais, fictícios ou controversos são permitidos.
Recursos e limites
Todos os limites e recursos reais da API em um só lugar — confira antes de recarregar.
| Item | Valor |
|---|---|
| Formato | compatível com OpenAI: qualquer SDK da OpenAI funciona trocando a base URL e a chave |
| Endpoints | POST /v1/chat/completions · GET /v1/models |
| ID do modelo | uncensored |
| Autenticação | Authorization: Bearer YOUR_KEY |
| Base URL | https://api.ttsapihub.com/v1 |
| Janela de contexto | 100.000 tokens (entrada + saída) |
| Streaming | sim — server-sent events; o último bloco traz o uso de tokens |
| Modo JSON | response_format: {"type": "json_object"} |
| Parâmetros | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| Chamada de funções | sim — tools, tool_choice; resposta com tool_calls, inclusive em streaming; resultados como role: tool |
| Saída máxima | até o restante da janela de 100.000 tokens; max_tokens opcional (sem limite separado) |
| Cabeçalhos | X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency |
| Concorrência | 8 requisições ao mesmo tempo por chave |
| Tamanho | até 8 MB por requisição |
| Limite de taxa | 300 requisições por minuto por chave |
| Cobrança | crédito pré-pago pelo uso real; erros e recusas são grátis |
| Bônus | +5% a partir de $50, +10% a partir de $100 |
| Preço | $0,25 por 1M tokens de entrada · $1,00 por 1M de saída |
| Recarga | USDT (TRC20) ou USDC (Base), qualquer valor inteiro de $10 a $500 |
| Validade | crédito pago não expira, sem assinatura |
| Teste grátis | $0,50 por 7 dias, sem cartão · Chave de teste: 2 requisições paralelas, 60 por minuto; limites totais (8 e 300) após a primeira recarga |
| Conteúdo | conteúdo adulto permitido; conteúdo sexual com menores é recusado |
| Chaves | uma chave ativa por conta; uma nova substitui a anterior |
| Login | Google ou e-mail e senha |
Códigos de erro
Erros chegam em JSON com um type fixo; requisições com falha ou recusadas não são cobradas.
| Código | Tipo | Significado |
|---|---|---|
400 | bad_request | JSON inválido, mensagens vazias, parâmetro errado ou contexto longo demais |
401 | missing_key · invalid_key · key_revoked | chave ausente, errada ou substituída |
402 | no_credit | sem crédito — recarregue e continue na hora |
403 | content_blocked | conteúdo sexual com menores — recusado, sem cobrança |
404 | not_found | endpoint desconhecido |
413 | request_too_large | corpo acima de 8 MB |
429 | rate_limited · concurrency | acima de 300/min ou 8 em paralelo — aguarde e tente de novo |
503 | upstream_busy | modelo ocupado — tente em alguns segundos |
Perguntas e respostas
Esta API gera áudio?
Não, esta é uma API apenas de texto. Ela gera o script ou diálogo de texto, que você envia para um mecanismo TTS separado para geração de áudio. Ela não produz arquivos de áudio, imagem ou vídeo.
Como começar a usar a API?
Cadastre-se na página Obter chave de API com um e-mail e senha. Você recebe uma chave de API imediatamente e $0,50 em crédito de teste válido por 7 dias. Nenhum cartão de crédito ou número de telefone é necessário para começar.
Qual é o tamanho da janela de contexto?
O modelo suporta uma janela de contexto de 100.000 tokens, que inclui tanto o prompt de entrada quanto a conclusão de saída. Isso permite processar documentos longos ou manter um histórico extenso de conversas no seu pipeline.
Sua chave está a um formulário de distância
Crie uma conta, copie a chave, altere a URL base. Essa é toda a configuração.