Felo API PlatformFelo API Platform

Felo Criar Apresentação

Provedor: Felo · Pago com saldo da plataforma

Gere uma apresentação de forma assíncrona e depois exporte um arquivo PPTX. Mantenha as etapas de geração e exportação separadas: uma tarefa criada ainda não é um arquivo concluído.

Todos os exemplos usam FELO_API_KEY a partir da visão geral. As chamadas usam saldo da plataforma, não créditos Pro da Felo. Os exemplos de resposta são ilustrativos; o conteúdo ao vivo e os campos opcionais variam.

1. Crie a apresentação

POST /api/v1/data/ppts

CampoTipoObrigatórioSignificado
querystringSimInstruções de geração, 1–25.000 caracteres
stream_protocolstringNãoPadrão message_center_v1; normalmente deixe sem alteração
ppt_configobjectNãoConfiguração opcional; a implementação atual lê ai_theme_id
livedoc_short_idstringNãoID de contexto existente, até 100 caracteres; deve passar pelas verificações nativas de propriedade da API e expiração
resource_idsarray de stringsNãoAté 100 IDs de recursos UUID; sujeito às mesmas verificações de acesso ao contexto

Para uma primeira integração, omita os campos de contexto e configuração. Um contexto criado por meio de /v2 não é automaticamente elegível para reutilização aqui.

curl -sS --request POST "https://openapi.felo.ai/api/v1/data/ppts" \
  -H "Authorization: Bearer $FELO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"query":"Create a 5-slide introduction to retrieval augmented generation for software developers."}'

HTTP 200 retorna identificadores na raiz:

{
  "task_id":"example-task-id",
  "ppt_business_id":"example-ppt-id",
  "livedoc_short_id":"example-livedoc-id",
  "expires_at":"2026-11-13T00:00:00Z"
}

Identificadores adicionais como resource_id, stream_key e thread_short_id podem estar presentes. Uma resposta bem-sucedida de criação significa que a tarefa foi aceita, não que a geração foi concluída. A contagem de slides solicitada é uma instrução; a cobrança usa a contagem real de páginas geradas.

TASK_ID="example-task-id"
PPT_ID="example-ppt-id"

Leia eventos de geração com SSE

Se a criação retornar uma stream_key, conecte-se imediatamente com uma API Key pertencente à mesma conta. Se nenhuma stream key for retornada, use as consultas de status e de resultado abaixo.

curl -N 'https://openapi.felo.ai/api/v1/data/conversations/stream/YOUR_STREAM_KEY?format=structured' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Accept: text/event-stream'
Parâmetro de consultaSignificado
formatraw (padrão) preserva a string content; structured decodifica JSON válido em um objeto ou array
offsetPosição opcional de retomada upstream para reconexão; não a infira da contagem local de eventos

Leia cada evento SSE completo, decodifique seu JSON externo e então processe content. Um evento de aplicativo answer carrega texto em data.text; finished sinaliza a conclusão da geração no stream. Também lide com sinais upstream done, [DONE] e error. Se a conexão for encerrada sem um sinal de conclusão, consulte o status da tarefa.

Use as regras de análise e o exemplo de cliente em SuperAgent SSE, com a URL desta seção /api/v1/data/conversations/stream/{stream_key}. Leia o resultado da tarefa após o término do stream; a exportação de PPTX continua sendo uma etapa separada. Este endpoint não habilita stream: true em /api/v1/data/chat.

Vida útil, propriedade e cobrança

  • As apresentações expiram sete dias após a criação. Consultas e exportações não estendem esse período. O expires_at da apresentação e o expires_at da URL assinada de download descrevem durações diferentes.
  • Apenas a conta de API que criou a apresentação pode acessar suas tarefas e apresentações. Um recurso ausente ou inacessível pode retornar 404; um recurso expirado ou excluído pode retornar 410, ou 404 após a limpeza.
  • A geração é cobrada por página gerada (ppt.generate). No preço por página, a criação reserva o preço de dez páginas, depois acerta a saída real bem-sucedida e libera a reserva não utilizada. Sua conta precisa de saldo disponível suficiente para a reserva, mesmo que o prompt solicite menos páginas.
  • A exportação tem um preço de solicitação separado (ppt.export). Consultas de status, consultas de resultado, consultas de status de exportação e exclusão não criam nova cobrança.
  • Após um timeout, consulte a tarefa salva em vez de criar outra apresentação. Veja Cobrança e Erros.

Precisa de ajuda?