Crear presentación de Felo
Proveedor: Felo · Pagado con saldo de la plataforma
Genera una presentación de forma asíncrona y luego exporta un archivo PPTX. Mantén separadas las fases de generación y exportación: una tarea creada todavía no es un archivo terminado.
Todos los ejemplos usan FELO_API_KEY de la vista general. Las llamadas usan saldo de la plataforma, no créditos Felo Pro. Los ejemplos de respuesta son ilustrativos; el contenido en vivo y los campos opcionales varían.
1. Crear la presentación
POST /api/v1/data/ppts
| Campo | Tipo | Requerido | Significado |
|---|---|---|---|
query | string | Sí | Instrucciones de generación, de 1 a 25.000 caracteres |
stream_protocol | string | No | message_center_v1 por defecto; normalmente déjalo sin cambios |
ppt_config | object | No | Configuración opcional; la implementación actual lee ai_theme_id |
livedoc_short_id | string | No | ID de contexto existente, hasta 100 caracteres; debe pasar las comprobaciones nativas de propiedad de API y caducidad |
resource_ids | arreglo de strings | No | Hasta 100 IDs de recursos UUID; sujeto a las mismas comprobaciones de acceso al contexto |
Para una primera integración, omite los campos de contexto y configuración. Un contexto creado a través de /v2 no es automáticamente apto para reutilizarse aquí.
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 devuelve identificadores en la raíz:
{
"task_id":"example-task-id",
"ppt_business_id":"example-ppt-id",
"livedoc_short_id":"example-livedoc-id",
"expires_at":"2026-11-13T00:00:00Z"
}Pueden aparecer identificadores adicionales como resource_id, stream_key y thread_short_id. Una respuesta de creación exitosa significa que la tarea fue aceptada, no que la generación haya terminado. El número de diapositivas solicitado es una instrucción; la facturación usa la cantidad real de páginas generadas.
TASK_ID="example-task-id"
PPT_ID="example-ppt-id"Leer eventos de generación con SSE
Si la creación devuelve un stream_key, conéctate de inmediato con una clave API perteneciente a la misma cuenta. Si no se devuelve ninguna clave de stream, usa las consultas de estado y resultados que aparecen abajo.
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 consulta | Significado |
|---|---|
format | raw (predeterminado) conserva la cadena content; structured decodifica JSON válido en un objeto o arreglo |
offset | Posición opcional de reanudación upstream para reconexión; no la infieras de tu recuento local de eventos |
Lee cada evento SSE completo, decodifica su JSON externo y luego procesa content. Un evento de aplicación answer lleva texto en data.text; finished señala la finalización de la generación en la secuencia. Maneja también las señales upstream done, [DONE] y error. Si la conexión se cierra sin una señal de finalización, consulta el estado de la tarea.
Usa las reglas de análisis y el ejemplo de cliente de SuperAgent SSE, con la URL /api/v1/data/conversations/stream/{stream_key} de esta sección. Lee el resultado de la tarea después de que termine la secuencia; la exportación a PPTX sigue siendo un paso separado. Este endpoint no habilita stream: true en /api/v1/data/chat.
Vida útil, propiedad y facturación
- Las presentaciones caducan siete días después de su creación. Las consultas y exportaciones no prolongan este periodo. El
expires_atde la presentación y elexpires_atde la URL firmada describen vidas útiles distintas. - Solo la cuenta API creadora puede acceder a sus tareas y presentaciones. Un recurso ausente o inaccesible puede devolver 404; un recurso caducado o eliminado puede devolver 410, o 404 después de la limpieza.
- La generación se factura por página generada (
ppt.generate). Con el precio por página, la creación reserva el precio de diez páginas y luego liquida la salida exitosa real y libera la reserva no utilizada. Tu cuenta necesita saldo disponible suficiente para la reserva incluso si el prompt solicita menos páginas. - La exportación tiene un precio de solicitud separado (
ppt.export). Las consultas de estado, las consultas de resultados, las consultas de estado de exportación y la eliminación no crean ningún nuevo cargo. - Después de un tiempo de espera, consulta la tarea guardada en lugar de crear otra presentación. Consulta Facturación y errores.