Documentation Index
Fetch the complete documentation index at: https://docs.xhuoapi.ai/llms.txt
Use this file to discover all available pages before exploring further.
Główną funkcją API Sora Tasks jest umożliwienie zapytania o status wykonania zadania za pomocą ID zadania wygenerowanego przez API Sora Videos Generation.
Dokument ten szczegółowo opisuje instrukcje integracji API Sora Tasks, aby pomóc Ci łatwo zintegrować i w pełni wykorzystać potężne możliwości tego API. Dzięki API Sora Tasks możesz łatwo sprawdzić status wykonania zadań API Sora Videos Generation.
Proces aplikacji
Aby korzystać z API Sora Tasks, należy najpierw przejść do strony aplikacji Sora Videos Generation API i złożyć wniosek o odpowiednią usługę, a następnie skopiować ID zadania API Sora Videos Generation, jak pokazano na obrazku:

Na koniec przejdź do strony API Tasks Sora Tasks API i złóż wniosek o odpowiednią usługę, po wejściu na stronę kliknij przycisk „Acquire”, jak pokazano na obrazku:
Jeśli nie jesteś zalogowany lub zarejestrowany, automatycznie zostaniesz przekierowany na stronę logowania, aby zarejestrować się i zalogować, po zalogowaniu lub rejestracji automatycznie wrócisz na bieżącą stronę.
Podczas pierwszej aplikacji otrzymasz darmowy limit, który pozwala na bezpłatne korzystanie z tego API.
Przykład żądania
API Sora Tasks może być używane do zapytania o wyniki API Sora Videos Generation. Aby dowiedzieć się, jak korzystać z API Sora Videos Generation, zapoznaj się z dokumentem Sora Videos Generation API.
Użyjemy jako przykładu ID zadania zwróconego przez usługę API Sora Videos Generation. Załóżmy, że mamy ID zadania: b8976e18-32dc-4718-9ed8-1ea090fcb6ea, a następnie pokażemy, jak to zrobić, przekazując ID zadania.
Przykład zadania

Ustawienia nagłówków żądania i ciała żądania
Nagłówki żądania obejmują:
accept: określa, że oczekiwany jest wynik odpowiedzi w formacie JSON, tutaj wpisz application/json.
authorization: klucz do wywołania API, po złożeniu wniosku można go bezpośrednio wybrać z rozwijanej listy.
Ciało żądania obejmuje:
id: ID przesłanego zadania.
action: sposób operacji na zadaniu.
Ustawienia są pokazane na poniższym obrazku:

Przykład kodu
Można zauważyć, że po prawej stronie strony automatycznie wygenerowano kod w różnych językach, jak pokazano na obrazku:

Przykłady kodu są następujące:
CURL
curl -X POST 'https://api.xhuoapi.ai/v1/sora/tasks' \
-H 'accept: application/json' \
-H 'authorization: Bearer {token}' \
-H 'content-type: application/json' \
-d '{
"id": "b8976e18-32dc-4718-9ed8-1ea090fcb6ea",
"action": "retrieve"
}'
Python
import requests
url = "https://api.xhuoapi.ai/v1/sora/tasks"
headers = {
"accept": "application/json",
"authorization": "Bearer {token}",
"content-type": "application/json"
}
payload = {
"id": "b8976e18-32dc-4718-9ed8-1ea090fcb6ea",
"action": "retrieve"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)
Przykład odpowiedzi
Po pomyślnym wykonaniu żądania API zwróci szczegółowe informacje o zadaniu wideo. Na przykład:
{
"_id": "68e914aa550a4144a5788305",
"id": "b8976e18-32dc-4718-9ed8-1ea090fcb6ea",
"api_id": "54aed96c-0346-4227-8c99-9780247a7ffd",
"application_id": "f10c04c2-2273-4463-bd3f-593d71b75ac8",
"created_at": 1760105642.045,
"credential_id": "4e6e181d-f320-4874-8d80-fc2253b40b7e",
"request": {
"size": "large",
"duration": 15,
"orientation": "landscape",
"prompt": "cat running on the river",
"model": "sora-2",
"image_urls": [
"https://cdn.xhuoapi.ai/11wfp4.png"
],
"callback_url": "https://webhook.site/eb238c4f-da3b-47a5-a922-a93aa5405daa"
},
"trace_id": "fb751e1e-4705-49ea-9fd4-5024b7865ea2",
"type": "videos",
"user_id": "ad7afe47-cea9-4cda-980f-2ad8810e51cf",
"response": {
"success": true,
"task_id": "b8976e18-32dc-4718-9ed8-1ea090fcb6ea",
"trace_id": "fb751e1e-4705-49ea-9fd4-5024b7865ea2",
"data": [
{
"id": "sora-2:task_01k777hjrbfrgs2060q5zvf2a5",
"video_url": "https://filesystem.site/gptimage/vg-assets/assets%2Ftask_01k777hjrbfrgs2060q5zvf2a5%2Ftask_01k777hjrbfrgs2060q5zvf2a5_genid_b8e2e5d1-a579-49ca-a21c-cb3869685cce_25_10_10_14_15_147334%2Fvideos%2F00000%2Fsrc.mp4?st=2025-10-10T12%3A38%3A49Z&se=2025-10-16T13%3A38%3A49Z&sks=b&skt=2025-10-10T12%3A38%3A49Z&ske=2025-10-16T13%3A38%3A49Z&sktid=a48cca56-e6da-484e-a814-9c849652bcb3&skoid=aa5ddad1-c91a-4f0a-9aca-e20682cc8969&skv=2019-02-02&sv=2018-11-09&sr=b&sp=r&spr=https%2Chttp&sig=p4aMqXqkP%2FI1IhOVGCB9JL8vUUvfNBBF12ESpKhKXOk%3D&az=oaivgprodscus",
"state": "succeeded"
}
]
}
}
Wynik zwrotny zawiera wiele pól, pole request to ciało żądania, które zostało wysłane podczas inicjowania zadania, a pole response to ciało odpowiedzi zwrócone po zakończeniu zadania. Opis pól jest następujący.
id, ID zadania wideo, które zostało wygenerowane, służy do unikalnej identyfikacji tego zadania generowania wideo.
request, informacje o żądaniu w zadaniu wideo.
response, informacje o odpowiedzi w zadaniu wideo.
Operacje zbiorcze
To jest zapytanie o szczegóły zadań wideo dla wielu ID zadań, w przeciwieństwie do powyższego, należy wybrać akcję jako retrieve_batch.
Ciało żądania obejmuje:
ids: tablica ID przesłanych zadań.
action: sposób operacji na zadaniu.
Ustawienia są pokazane na poniższym obrazku:

Przykład kodu
可以发现,在页面右侧已经自动生成了各种语言的代码,如图所示:

部分代码示例如下:
响应示例
请求成功后,API 将返回此次所有批量视频任务的具体详情信息。例如:
{
"items": [
{
"_id": "68e914aa550a4144a5788305",
"id": "b8976e18-32dc-4718-9ed8-1ea090fcb6ea",
"api_id": "54aed96c-0346-4227-8c99-9780247a7ffd",
"application_id": "f10c04c2-2273-4463-bd3f-593d71b75ac8",
"created_at": 1760105642.045,
"credential_id": "4e6e181d-f320-4874-8d80-fc2253b40b7e",
"request": {
"size": "large",
"duration": 15,
"orientation": "landscape",
"prompt": "cat running on the river",
"model": "sora-2",
"image_urls": [
"https://cdn.xhuoapi.ai/11wfp4.png"
],
"callback_url": "https://webhook.site/eb238c4f-da3b-47a5-a922-a93aa5405daa"
},
"trace_id": "fb751e1e-4705-49ea-9fd4-5024b7865ea2",
"type": "videos",
"user_id": "ad7afe47-cea9-4cda-980f-2ad8810e51cf",
"response": {
"success": true,
"task_id": "b8976e18-32dc-4718-9ed8-1ea090fcb6ea",
"trace_id": "fb751e1e-4705-49ea-9fd4-5024b7865ea2",
"data": [
{
"id": "sora-2:task_01k777hjrbfrgs2060q5zvf2a5",
"video_url": "https://filesystem.site/gptimage/vg-assets/assets%2Ftask_01k777hjrbfrgs2060q5zvf2a5%2Ftask_01k777hjrbfrgs2060q5zvf2a5_genid_b8e2e5d1-a579-49ca-a21c-cb3869685cce_25_10_10_14_15_147334%2Fvideos%2F00000%2Fsrc.mp4?st=2025-10-10T12%3A38%3A49Z&se=2025-10-16T13%3A38%3A49Z&sks=b&skt=2025-10-10T12%3A38%3A49Z&ske=2025-10-16T13%3A38%3A49Z&sktid=a48cca56-e6da-484e-a814-9c849652bcb3&skoid=aa5ddad1-c91a-4f0a-9aca-e20682cc8969&skv=2019-02-02&sv=2018-11-09&sr=b&sp=r&spr=https%2Chttp&sig=p4aMqXqkP%2FI1IhOVGCB9JL8vUUvfNBBF12ESpKhKXOk%3D&az=oaivgprodscus",
"state": "succeeded"
}
]
}
},
{
"_id": "68e914aa550a4144a5788305",
"id": "b8976e18-32dc-4718-9ed8-1ea090fcb6ea",
"api_id": "54aed96c-0346-4227-8c99-9780247a7ffd",
"application_id": "f10c04c2-2273-4463-bd3f-593d71b75ac8",
"created_at": 1760105642.045,
"credential_id": "4e6e181d-f320-4874-8d80-fc2253b40b7e",
"request": {
"size": "large",
"duration": 15,
"orientation": "landscape",
"prompt": "cat running on the river",
"model": "sora-2",
"image_urls": [
"https://cdn.xhuoapi.ai/11wfp4.png"
],
"callback_url": "https://webhook.site/eb238c4f-da3b-47a5-a922-a93aa5405daa"
},
"trace_id": "fb751e1e-4705-49ea-9fd4-5024b7865ea2",
"type": "videos",
"user_id": "ad7afe47-cea9-4cda-980f-2ad8810e51cf",
"response": {
"success": true,
"task_id": "b8976e18-32dc-4718-9ed8-1ea090fcb6ea",
"trace_id": "fb751e1e-4705-49ea-9fd4-5024b7865ea2",
"data": [
{
"id": "sora-2:task_01k777hjrbfrgs2060q5zvf2a5",
"video_url": "https://filesystem.site/gptimage/vg-assets/assets%2Ftask_01k777hjrbfrgs2060q5zvf2a5%2Ftask_01k777hjrbfrgs2060q5zvf2a5_genid_b8e2e5d1-a579-49ca-a21c-cb3869685cce_25_10_10_14_15_147334%2Fvideos%2F00000%2Fsrc.mp4?st=2025-10-10T12%3A38%3A49Z&se=2025-10-16T13%3A38%3A49Z&sks=b&skt=2025-10-10T12%3A38%3A49Z&ske=2025-10-16T13%3A38%3A49Z&sktid=a48cca56-e6da-484e-a814-9c849652bcb3&skoid=aa5ddad1-c91a-4f0a-9aca-e20682cc8969&skv=2019-02-02&sv=2018-11-09&sr=b&sp=r&spr=https%2Chttp&sig=p4aMqXqkP%2FI1IhOVGCB9JL8vUUvfNBBF12ESpKhKXOk%3D&az=oaivgprodscus",
"state": "succeeded"
}
]
}
}
],
"count": 2
}
返回结果一共有多个字段,其中items是包含了批量视频任务的具体详情信息,每个视频任务的具体信息与上文的字段一样,字段信息如下。
items,批量视频任务的所有具体详情信息。它是一个数组,每个数组的元素和上文查询单个任务的返回结果格式是一样的。
count,此处批量查询视频任务的个数。
CURL
curl -X POST 'https://api.xhuoapi.ai/v1/sora/tasks' \
-H 'accept: application/json' \
-H 'authorization: Bearer {token}' \
-H 'content-type: application/json' \
-d '{
"ids": ["b8976e18-32dc-4718-9ed8-1ea090fcb6ea","b8976e18-32dc-4718-9ed8-1ea090fcb6ea"],
"action": "retrieve_batch"
}'
Python
import requests
url = "https://api.xhuoapi.ai/v1/sora/tasks"
headers = {
"accept": "application/json",
"authorization": "Bearer {token}",
"content-type": "application/json"
}
payload = {
"ids": ["b8976e18-32dc-4718-9ed8-1ea090fcb6ea","b8976e18-32dc-4718-9ed8-1ea090fcb6ea"],
"action": "retrieve_batch"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)
Obsługa błędów
Podczas wywoływania API, jeśli napotkasz błąd, API zwróci odpowiedni kod błędu i informacje. Na przykład:
400 token_mismatched:Złe żądanie, prawdopodobnie z powodu brakujących lub nieprawidłowych parametrów.
400 api_not_implemented:Złe żądanie, prawdopodobnie z powodu brakujących lub nieprawidłowych parametrów.
401 invalid_token:Nieautoryzowany, nieprawidłowy lub brakujący token autoryzacyjny.
429 too_many_requests:Zbyt wiele żądań, przekroczyłeś limit szybkości.
500 api_error:Błąd wewnętrzny serwera, coś poszło nie tak na serwerze.
Przykład odpowiedzi błędu
{
"success": false,
"error": {
"code": "api_error",
"message": "fetch failed"
},
"trace_id": "2cf86e86-22a4-46e1-ac2f-032c0f2a4e89"
}
Wnioski
Dzięki temu dokumentowi zrozumiałeś, jak korzystać z API Sora Tasks do zapytań o pojedyncze lub zbiorcze zadania wideo. Mamy nadzieję, że ten dokument pomoże Ci lepiej zintegrować i korzystać z tego API. W razie jakichkolwiek pytań, skontaktuj się z naszym zespołem wsparcia technicznego.