Skip to main content
POST
Gere fala para seu SRT no idioma de destino em um projeto existente já transcrito. A fala e a sincronização labial opcional usam os créditos de mídia habituais. Consulte projects_status.

Autenticação e permissões

string
obrigatório
Envie uma chave de API VoiceCheap neste cabeçalho. Authorization: Bearer com a mesma chave de API também é aceito. Tokens de acesso OAuth são aceitos apenas pelo MCP, não por este endpoint REST.
Permissões necessárias: translations:write. É necessária uma assinatura paga ativa. As permissões não alteram funções na equipe, propriedade dos recursos, créditos de mídia ou limites do plano.

Parâmetros

string
obrigatório
Valor de texto.Comprimento mínimo: 1. Comprimento máximo: 200. Padrão: ^[^/\\]+$.
boolean
Valor booleano.
boolean
Valor booleano.
number
Valor numérico.Mínimo: 1. Máximo: 70.
string
Valor de texto.Valores aceitos: “cloning”, “custom”.
string
Valor de texto.Comprimento mínimo: 1. Comprimento máximo: 128.
boolean
Valor booleano.
string
Valor de texto.Valores aceitos: “translated”, “original”.
string
Valor de texto.Valores aceitos: “studio”, “realistic”.
string
Valor de texto.Valores aceitos: “standard”, “pro”, “studio”.
boolean
Valor booleano.
object
Objeto JSON. Consulte o esquema de entrada completo para ver os campos aninhados.
array
Lista de valores. Consulte o esquema de entrada completo para ver a estrutura dos itens.Máximo de itens: 100.
string
obrigatório
Valor de texto.Valores aceitos: “afrikaans”, “albanian”, “amharic”, “arabic”, “armenian”, “assamese”, “azerbaijani”, “basque”, “belarusian”, “bengali”, “bosnian”, “bulgarian”, “catalan”, “croatian”, “czech”, “danish”, “dutch”, “english”, “british english”, “estonian”, “finnish”, “french”, “french canadian”, “galician”, “german”, “greek”, “gujarati”, “hebrew”, “hindi”, “hungarian”, “icelandic”, “indonesian”, “irish”, “italian”, “japanese”, “kannada”, “kazakh”, “khmer”, “korean”, “lao”, “latvian”, “lithuanian”, “macedonian”, “malay”, “malayalam”, “mandarin”, “marathi”, “mongolian”, “nepali”, “norwegian”, “persian”, “polish”, “portuguese”, “brazilian portuguese”, “pt_brazil”, “punjabi”, “romanian”, “russian”, “serbian”, “slovak”, “slovenian”, “spanish”, “swahili”, “swedish”, “tagalog”, “tamil”, “telugu”, “thai”, “turkish”, “ukrainian”, “urdu”, “vietnamese”, “welsh”, “yoruba”, “zulu”.
string
obrigatório
Valor de texto.Comprimento mínimo: 1. Comprimento máximo: 1000000.
string
Opcional na camada de transporte: o servidor insere um identificador antes da validação quando ele é omitido. Forneça seu próprio UUID v4 estável para recuperar com segurança uma resposta perdida.Formato: “uuid”. Padrão: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-4[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$.
O JSON Schema abaixo preserva os nomes exatos dos campos, tipos aninhados, valores padrão, limites e valores aceitos expostos pela descoberta. Regras adicionais entre campos são listadas nas notas da operação.

Idempotência

Use um UUID v4 em requestId ou no cabeçalho HTTP Idempotency-Key para cada alteração. Reutilize o mesmo identificador e argumentos idênticos após uma falha de rede. Se ambos forem fornecidos, devem ser iguais. Repetir uma requisição salva não repete a operação nem consome outra chamada mensal. Requisições com falha ou interrompidas não são reiniciadas automaticamente. Qualquer alteração pode retornar HTTP 202 quando uma nova tentativa encontra a mesma requisição ainda em execução, mesmo que a primeira execução normalmente seja síncrona. Se a execução foi concluída, mas resultStored é false, uma nova tentativa retorna HTTP 200 com o estado salvo da requisição em vez do resultado original. Recupere a saída pela ação de histórico, resultado ou download do domínio correspondente.

Exemplos de requisição

Substitua os identificadores de recursos e as chaves de mídia dos exemplos pelos valores retornados para sua conta. Mantenha o identificador da requisição ao tentar novamente a mesma alteração.

Resposta

Uma primeira execução bem-sucedida retorna HTTP 200 com o resultado da operação em data. Uma repetição pode retornar o estado salvo da requisição. O exemplo mostra uma resposta aceita, não todos os campos opcionais. Retorna os identificadores do projeto e do trabalho por idioma após admitir a geração de fala a partir do SRT no idioma de destino fornecido pelo solicitante.

Campos do resultado

Recuperar e consultar esta requisição

Use o mesmo identificador mesmo após perder a conexão. Se resultStored for false, recupere a saída pela ação correspondente de histórico, resultado ou download. Nunca inicie uma segunda geração apenas para verificar o progresso.
HTTP 200

Notas da operação

  • translatedSrt é obrigatório e deve conter blocos SRT válidos. Esta ação exige uma transcrição original concluída. Os blocos correspondem aos segmentos de origem existentes pelo horário de início com tolerância de 0.05 segundos; se não houver correspondência, usa-se a maior sobreposição de tempo. A temporização da saída sempre usa a linha do tempo dos segmentos originais.
  • O trabalho no idioma de destino é reutilizado ou criado. O texto fornecido é dublado sem tradução automática nem SmartSync.
  • Nenhuma mídia de origem é reenviada. O projeto armazenado fornece a duração e o tipo de áudio/vídeo.
  • Esta ação não aceita sourceSrt, fileKey, URL de mídia nem webhookUrl.
  • voiceMode usa cloning por padrão. Com voiceMode custom, use uma voz do catálogo ou uma voz personalizada salva pela conta autenticada; não envie voiceCloningSettings. A cobrança da equipe não concede acesso às vozes salvas de outros membros.
  • Os campos opcionais subtitles, lipSyncMode e translationTimeSkips exigem uma entrada de vídeo. Os intervalos ignorados devem ficar dentro da duração da mídia, keepBackgroundMusic deve ser true e keepOriginalVoice deve ser false.
  • lipSyncMode aceita standard, pro ou studio, sujeito ao plano e às verificações normais de créditos de mídia. Fala e sincronização labial não se tornam gratuitas porque as chamadas mensais de API são ilimitadas.
  • Consulte projects_status periodicamente para acompanhar o fluxo de mídia; obtenha todas as versões de idioma com projects_get.
  • Um bloco de legenda sem segmento de origem correspondente ou um segmento de origem sem texto fornecido pode causar falha no processamento em segundo plano; inspecione projects_status.error ou translations de projects_get após a admissão.

Uso

Cada chamada bem-sucedida consome uma chamada mensal da API/MCP. Os créditos de mídia e as cotas de geração da própria operação também se aplicam.

Erros