Skip to main content
OpenAI Tasks API służy do zapytania o wyniki zadań, które wcześniej zostały przesłane do interfejsu obrazów OpenAI w trybie callback. Gdy nie możesz czekać na synchronizowaną odpowiedź HTTP lub chcesz ponownie zapytać o zadanie później, użyj tego interfejsu. W trybie callback, oryginalny interfejs obrazów po przyjęciu żądania natychmiast zwraca task_id. Posiadasz ten task_id i możesz go użyć do zapytania w tym interfejsie, gdy zajdzie taka potrzeba, bez konieczności dodatkowego przekazywania niestandardowego trace_id (tylko gdy chcesz powiązać to z własnym identyfikatorem biznesowym).
Zadanie będzie trwałe tylko wtedy, gdy oryginalne żądanie obrazów zawiera callback_url. Żądania wywoływane w trybie synchronizowanym (nie callback) nie będą przechowywane.

Proces aplikacji

OpenAI Tasks API korzysta z tej samej autoryzacji co istniejące usługi OpenAI. Jeśli już aplikowałeś o OpenAI Images Generations, możesz bezpośrednio użyć tego samego tokena do wywołania tego interfejsu, nie musisz składać dodatkowej aplikacji. Nowi użytkownicy mają darmowy limit przy pierwszej aplikacji.

Adres interfejsu

Obsługiwane action:

Nagłówki żądania

  • accept: application/json
  • authorization: Bearer {token}
  • content-type: application/json

Zapytanie o pojedyncze zadanie (retrieve)

Treść żądania

Należy przekazać przynajmniej jedno z id lub trace_id. W normalnych okolicznościach wystarczy użyć id zwróconego w odpowiedzi, trace_id należy przekazać tylko wtedy, gdy chcesz powiązać to z niestandardowym identyfikatorem biznesowym.

Przykład kodu

CURL

Python

Przykład odpowiedzi

Gdy zadanie istnieje:
Gdy nie znaleziono żadnego zadania, zwraca pusty obiekt:

Opis pól

  • id: ID zadania wygenerowane podczas przyjmowania oryginalnego żądania obrazów.
  • trace_id: Niestandardowy identyfikator śledzenia przekazany w oryginalnym żądaniu, ułatwiający powiązanie z biznesem klienta.
  • type: Typ zadania. Zadania zapisane w serii gpt-image (np. gpt-image-2) mają wartość images; gpt-image-1, nano-banana itp. używają images_generations / images_edits, a niektóre interfejsy czatu mają wartość chat_completions_image.
  • request: Pełna treść oryginalnego żądania.
  • response: Ostateczna treść odpowiedzi zwrócona po zakończeniu callbacku.
  • created_at / started_at / finished_at: Znaczniki czasu Unix (sekundy, liczby zmiennoprzecinkowe).
  • elapsed: Czas wykonania (sekundy, liczby zmiennoprzecinkowe).
  • application_id / user_id / credential_id: ID aplikacji, użytkownika końcowego, ID poświadczenia.

Zapytanie o wiele zadań (retrieve_batch)

Treść żądania

Należy przekazać jedno z ids / trace_ids / application_id / user_id lub created_at_* w oknie czasowym.

Przykład CURL

Przykład odpowiedzi

Przykład end-to-end: przesyłanie i polling

API zadań głównie służy do asynchronicznych procesów w trybie callback. W trybie callback, interfejs przesyłania natychmiast synchronizuje zwrot task_id (czyli ID zadania), a następnie wystarczy bezpośrednio użyć tego task_id do pollingowania interfejsu zadań, bez potrzeby generowania trace_id.

Uwagi

  • Interfejs zadań nie jest płatny, można bez obaw pollingować. Tylko oryginalne żądania generowania/edycji obrazów będą obciążane opłatami.
  • Tylko gdy oryginalne żądanie zawiera callback_url, zostanie zapisany rekord zadania; wywołania synchronizacyjne nie generują zadań do zapytania.
  • Rekordy zadań, które przekroczyły okres przechowywania platformy, mogą zostać usunięte.