https://easyf.appCompilar downloads com EasyF
EasyF Uma revisão de suporte ainda é necessária antes de uma chave ativa e limite de uso existirem, mas isso pode ser feito em breve.
Início rápido
Para explicar o host da API, o EasyF separa as credenciais ativadas pelo suporte de um ponto de extremidade de locatário atribuído.
X-API-Key: pending_activation_…EasyfClientv1# Available only after support activation
export EASYF_SERVICE_KEY="issued-after-review"
curl -X POST https://easyf.app/v1/resolve \
-H "X-API-Key: $EASYF_SERVICE_KEY" \
-H "Content-Type: application/json" \
-d '{"asset_url":"https://www.youtube.com/watch?v=VIDEO_ID"}'A segurança das credenciais começa com o armazenamento de segredos do lado do servidor em EasyF. A próxima visualização abrange a incorporação de pacotes de clientes.
Resolver um link
Para explicar a operação Resolve, EasyF separa a detecção de fonte dos formatos de um URL enviado. Um fluxo de trabalho em linguagem simples não dá às saídas inventadas seu próprio lugar.
/v1/resolveEscopo: resolver| Campo | Tipo | Necessário | Descrição |
|---|---|---|---|
asset_url | URL HTTPS | Sim | Página de mídia pública ou autorizada para analisar. |
tenant | string | Nã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
}O identificador de formato começa com o valor retornado inalterado em EasyF. A próxima visualização abrange a disponibilidade por link.
Criar e acompanhar um trabalho de download
EasyF apresenta três pontos práticos para criação de empregos. Primeiro vem a preparação assíncrona. O fluxo de trabalho em linguagem simples cobre então uma breve requisição HTTP. Seu ponto final é a execução limitada do trabalhador.
/v1/jobsÂmbito: empregos| Campo | Tipo | Necessário | Descrição |
|---|---|---|---|
asset_url | URL HTTPS | Sim | A mesma fonte normalizada foi submetida para resolver. |
variant_code | string | Sim | Um ID exato da resposta de resolução. |
tenant | string | Não. | Domínio do locatário atribuído. Geralmente omitido. |
curl -X POST https://easyf.app/v1/jobs \
-H "X-API-Key: $EASYF_SERVICE_KEY" \
-H "Content-Type: application/json" \
-d '{"asset_url":"https://www.youtube.com/watch?v=VIDEO_ID","variant_code":"18"}'delivery_id.GET /v1/jobs/{delivery_id} com a mesma chave.| Estado | Significado | Ação do cliente |
|---|---|---|
queued | Admitido na fila limitada. | Sondagem novamente com recuo. |
extracting | Atualizando metadados da fonte ou rota. | Continue a pesquisar. |
processing | Baixando, remuxing ou mesclando. | Exibir o progresso do servidor. |
ready | Download assinado disponível. | Envie a URL para o usuário. |
failed | Erro estruturado do terminal. | Leia error_code. Repita somente quando aconselhado. |
expired | Saída temporária foi removida. | Crie um novo trabalho. |
curl https://easyf.app/v1/jobs/DELIVERY_ID \
-H "X-API-Key: $EASYF_SERVICE_KEY"EasyF aborda a pesquisa de trabalhos por meio de uma espera inicial de um segundo e, em seguida, um backoff limitado.
Erros previsíveis
EasyF organiza o contrato de erro em torno de um envelope não 2xx. Seu fluxo de trabalho em linguagem simples compara um ID de solicitação de suporte.
{
"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": "…"
}| HTTP | Significado típico | Acção |
|---|---|---|
| 400 | URL inválido, corpo ou formato indisponível. | Corrija a solicitação. Resolva novamente para formatos. |
| 401 | Chave ausente, inválida, expirada ou com escopo errado. | Verifique a credencial do lado do servidor. |
| 403 | O inquilino ou a política de origem rejeitou a solicitação. | Não ignore a política. Entre em contato com o suporte. |
| 404 | Trabalho desconhecido ou expirado. | Crie um novo trabalho, se apropriado. |
| 429 | Limite de solicitações ou trabalhos ativos atingido. | Honra. retry_after_seconds. |
| 503 | Fila/capacidade ou upstream temporariamente indisponível. | Tentar novamente com recuo exponencial e jitter. |
Contrato operacional
A EasyF concorda com limites práticos de uso com cada produto aprovado para preservar um fluxo de trabalho guiado previsível.
- Use lógica de aplicação idempotente e nunca inicie trabalhos duplicados para o mesmo clique do usuário.
- Armazene em cache os metadados de resolução brevemente, mas sempre trate URLs de download assinados como expirados.
- Use recuo exponencial limitado com jitter para
429,503e erros retráteis. - Processe apenas mídia pública ou mídia à qual você está autorizado a acessar. DRM e controles de acesso não são contornados.
- Mantenha IDs de solicitação e IDs de tarefa em logs operacionais privados. Não registre URLs enviadas desnecessariamente.
Para explicar o acesso ao esquema, o EasyF separa a ativação antes da exploração da autenticação atribuída.
Ativar através do suporte
Informe ao EasyF o que você está construindo, com que frequência ele chamará a API e quais provedores importam. A revisão decide as operações permitidas, então revela uma credencial uma vez enquanto salva apenas seu resumo seguro.
Solicitar ativação 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.