PRODUÇÃO REST API · v1

Construa downloads com YTSave

Resolva uma URL de mídia pública, selecione um formato exato, crie um trabalho assíncrono e entregue o resultado assinado ao seu usuário. O mesmo pipeline de produção vinculado alimenta o site YTSave.

YTSaveClientJSON sobre HTTPSTrabalhos assíncronosCredenciais com escopo
01

Início rápido

YTSave gerencia o host da API identificando primeiro as credenciais ativadas pelo suporte. Em seguida, utiliza um endpoint de locatário atribuído e mantém um caminho de chamada exclusivo para o servidor em vista.

URL do locatáriohttps://ytsave.app
AutenticaçãoX-API-Key: ys_live_…
Perfil do clienteYTSaveClient
Versão da APIv1
# Available only after support activation
export YTSAVE_API_KEY="issued-after-review"

curl -X POST https://ytsave.app/v1/resolve \
  -H "X-API-Key: $YTSAVE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://www.youtube.com/watch?v=VIDEO_ID"}'

Para explicar a segurança das credenciais, YTSave separa o armazenamento secreto do lado do servidor da não incorporação de pacotes no cliente. Um registro de evidências não atribui um lugar próprio a logs públicos ou repositórios.

02

Resolver um link

YTSave lida com a operação Resolve identificando primeiro a detecção de origem. Em seguida, segue com formatos de uma URL enviada e não mantém saídas inventadas em vista.

POST/v1/resolveEscopo: resolver
CampoTipoNecessárioDescrição
urlURL HTTPSSimPágina de mídia pública ou autorizada para analisar.
tenantstringNão.Domínio do locatário atribuído. Geralmente omitido.
{
  "success": true,
  "platform": "youtube",
  "title": "Example video",
  "formats": [
    {"id":"18","type":"video","quality":"360p","container":"mp4"}
  ],
  "cached": false
}

Para explicar o identificador de formato, YTSave separa o valor retornado inalterado da disponibilidade por link. Um registro de evidências não atribui um lugar próprio a nenhum rótulo de qualidade estimada.

03

Criar e acompanhar um trabalho de download

Para a criação de Trabalho, YTSave começa com preparação assíncrona. Seu registro de evidências combina isso com uma requisição HTTP curta e termina com execução limitada do trabalhador.

POST/v1/jobsÂmbito: empregos
CampoTipoNecessárioDescrição
urlURL HTTPSSimA mesma fonte normalizada foi submetida para resolver.
format_idstringSimUm ID exato da resposta de resolução.
tenantstringNão.Domínio do locatário atribuído. Geralmente omitido.
curl -X POST https://ytsave.app/v1/jobs \
  -H "X-API-Key: $YTSAVE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://www.youtube.com/watch?v=VIDEO_ID","format_id":"18"}'
1202 AceitoSalvar job_id.
2Status da enqueteGET /v1/jobs/{job_id} com a mesma chave.
3Pronto.Abrir a URL de download assinada.
EstadoSignificadoAção do cliente
queuedAdmitido na fila limitada.Sondagem novamente com recuo.
extractingAtualizando metadados da fonte ou rota.Continue a pesquisar.
processingBaixando, remuxing ou mesclando.Exibir o progresso do servidor.
readyDownload assinado disponível.Envie a URL para o usuário.
failedErro estruturado do terminal.Leia error_code. Repita somente quando aconselhado.
expiredSaída temporária foi removida.Crie um novo trabalho.
curl https://ytsave.app/v1/jobs/JOB_ID \
  -H "X-API-Key: $YTSAVE_API_KEY"

YTSave facilita a varredura da pesquisa de trabalho. A página começa com uma espera inicial de um segundo, passa para um retrocesso limitado e declara claramente a entrega temporária assinada.

04

Erros previsíveis

Para o contrato de erro, YTSave verifica um envelope não 2xx antes de um ID de solicitação de suporte. Este registro de evidência também torna claro o manuseio previsível do cliente.

{
  "success": false,
  "error": {
    "code": "RATE_LIMITED",
    "category": "rate_limited",
    "message": "Too many requests. Please try again shortly.",
    "retryable": true,
    "details": {"retry_after_seconds": 20}
  },
  "request_id": "…"
}
HTTPSignificado típicoAcção
400URL inválido, corpo ou formato indisponível.Corrija a solicitação. Resolva novamente para formatos.
401Chave ausente, inválida, expirada ou com escopo errado.Verifique a credencial do lado do servidor.
403O inquilino ou a política de origem rejeitou a solicitação.Não ignore a política. Entre em contato com o suporte.
404Trabalho desconhecido ou expirado.Crie um novo trabalho, se apropriado.
429Limite de solicitações ou trabalhos ativos atingido.Honra. retry_after_seconds.
503Fila/capacidade ou upstream temporariamente indisponível.Tentar novamente com recuo exponencial e jitter.
05

Contrato operacional

YTSave emite uma cota operacional a cada aprovação para proteger o consumidor da API e os serviços de mídia upstream.

YTSave gerencia o acesso ao Schema identificando primeiro a ativação antes da exploração. Em seguida, segue com a autenticação atribuída e mantém as formas de solicitação documentadas em vista. Referência OpenAPI

ACESSO REVISADO PELO OPERADOR

Solicite sua chave de API

Documente o consumidor da API, sua estimativa mensal de requisições e os requisitos de plataforma suportados. YTSave avalia se a resolução, submissão de trabalho ou ambos são justificados antes de emitir uma chave visível uma única vez.

Solicitar acesso à API As chaves são limitadas ao locatário, revogáveis e emitidas através do formulário de contato. Scripts anônimos não podem executar trabalhos de download.