Felo Utwórz prezentację
Dostawca: Felo · Płatność z salda platformy
Wygeneruj prezentację asynchronicznie, a następnie wyeksportuj plik PPTX. Rozdziel krok generowania i eksportu: utworzone zadanie nie jest jeszcze gotowym plikiem.
Wszystkie przykłady używają FELO_API_KEY z przeglądu. Wywołania korzystają z salda platformy, a nie z kredytów Felo Pro. Przykłady odpowiedzi mają charakter poglądowy; rzeczywista treść i opcjonalne pola mogą się różnić.
1. Utwórz prezentację
POST /api/v1/data/ppts
| Pole | Typ | Wymagane | Znaczenie |
|---|---|---|---|
query | string | Tak | Instrukcje generowania, 1–25 000 znaków |
stream_protocol | string | Nie | Domyślnie message_center_v1; zwykle pozostaw bez zmian |
ppt_config | object | Nie | Opcjonalna konfiguracja; bieżąca implementacja odczytuje ai_theme_id |
livedoc_short_id | string | Nie | Istniejące ID kontekstu, do 100 znaków; musi przejść natywne sprawdzenia własności API i wygaśnięcia |
resource_ids | tablica stringów | Nie | Do 100 UUID ID zasobów; obowiązują te same kontrole dostępu do kontekstu |
Dla pierwszej integracji pomiń pola kontekstu i konfiguracji. Kontekst utworzony przez /v2 nie jest automatycznie uprawniony do ponownego użycia tutaj.
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 zwraca identyfikatory w korzeniu:
{
"task_id":"example-task-id",
"ppt_business_id":"example-ppt-id",
"livedoc_short_id":"example-livedoc-id",
"expires_at":"2026-11-13T00:00:00Z"
}Dodatkowe identyfikatory, takie jak resource_id, stream_key i thread_short_id, mogą być obecne. Udana odpowiedź create oznacza, że zadanie zostało przyjęte, a nie że generowanie zostało zakończone. Żądana liczba slajdów jest instrukcją; rozliczenie używa rzeczywistej liczby wygenerowanych stron.
TASK_ID="example-task-id"
PPT_ID="example-ppt-id"Odczyt zdarzeń generowania z SSE
Jeśli tworzenie zwróci stream_key, połącz się natychmiast za pomocą API Key należącego do tego samego konta. Jeśli nie zwrócono klucza strumienia, użyj poniższych zapytań o status i wyniki.
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'| Parametr zapytania | Znaczenie |
|---|---|
format | raw (domyślnie) zachowuje ciąg content; structured dekoduje prawidłowy JSON do obiektu lub tablicy |
offset | Opcjonalna pozycja wznowienia w nadrzędnym źródle przy ponownym połączeniu; nie wyprowadzaj jej z lokalnej liczby zdarzeń |
Odczytaj każde kompletne zdarzenie SSE, zdekoduj jego zewnętrzny JSON, a następnie przetwórz content. Zdarzenie aplikacyjne answer niesie tekst w data.text; finished sygnalizuje zakończenie generowania w strumieniu. Obsługuj także sygnały nadrzędne done, [DONE] i error. Jeśli połączenie zamknie się bez sygnału zakończenia, sprawdź status zadania.
Użyj zasad parsowania i przykładu klienta z SuperAgent SSE, z tym adresem URL sekcji /api/v1/data/conversations/stream/{stream_key}. Odczytaj wynik zadania po zakończeniu strumienia; eksport PPTX pozostaje osobnym krokiem. Ten punkt końcowy nie włącza stream: true dla /api/v1/data/chat.
Czas życia, własność i rozliczenia
- Prezentacje wygasają siedem dni po utworzeniu. Zapytania i eksporty nie wydłużają tego okresu.
expires_atprezentacji i podpisany URL pobieraniaexpires_atopisują różne czasy życia. - Tylko konto API, które utworzyło zasób, może uzyskiwać dostęp do swoich zadań i prezentacji. Brakujący lub niedostępny zasób może zwrócić 404; wygasły lub usunięty zasób może zwrócić 410 albo 404 po sprzątaniu.
- Generowanie jest rozliczane za wygenerowaną stronę (
ppt.generate). Przy cenach per strona utworzenie rezerwuje cenę dziesięciu stron, a następnie rozlicza rzeczywisty udany wynik i zwalnia niewykorzystaną rezerwację. Twoje konto potrzebuje wystarczającego dostępnego salda na rezerwację, nawet jeśli prompt prosi o mniej stron. - Eksport ma osobną cenę za żądanie (
ppt.export). Zapytania o status, zapytania o wyniki, zapytania o status eksportu i usuwanie nie tworzą nowej opłaty. - Po przekroczeniu limitu czasu sprawdź zapisane zadanie, zamiast tworzyć kolejną prezentację. Zobacz Rozliczenia i błędy.