> ## Documentation Index
> Fetch the complete documentation index at: https://docs.acedata.cloud/llms.txt
> Use this file to discover all available pages before exploring further.

# Development Dreamina Tasks

> Dreamina API guide - Ace Data Cloud

## Dreamina Tasks API:s integration och användning

Dreamina Tasks API används för att fråga om resultaten av digitala videouppgifter skapade av [Dreamina Video Generation API](https://platform.acedata.cloud/documents/dreamina-videos-integration). När du skickar `callback_url` eller `async: true` i genereringsgränssnittet kommer API:t omedelbart att returnera ett `task_id`, som du kan använda för att pollera uppgiftsstatus och den slutliga videoadressen via detta API med `task_id` eller `trace_id`. **Detta API är gratis.**

## Ansökningsprocess

För att använda Dreamina-serien av API:er, börja med att hämta din API-token från [Ace Data Cloud-konsolen](https://platform.acedata.cloud/console/applications) för framtida bruk.

Om du inte är inloggad eller registrerad kommer du automatiskt att omdirigeras till inloggningssidan för att registrera dig och logga in, och efter att ha slutfört detta kommer du automatiskt att återvända till den aktuella sidan.

**En API-token räcker för att anropa alla tjänster på plattformen, du behöver inte ansöka separat för varje tjänst.** Första ansökan ger en gratis kvot för att prova; om kvoten är otillräcklig kan du ladda på allmän balans i [konsolen](https://platform.acedata.cloud/console/coin).

## Begärningsparametrar

**Begärningshuvuden**

* `accept`: specificera att du tar emot svar i JSON-format, skriv `application/json`.
* `authorization`: nyckeln för att anropa API:t, formatet är `Bearer {token}`.
* `content-type`: skriv `application/json`.

**Begärningskropp**

| Parameter | Typ | Obligatorisk | Beskrivning |
| - | - | - | - |
| `action` | string | Nej | Operationstyp, `retrieve` (standard, fråga en) eller `retrieve_batch` (batchfråga) |
| `id` | string | Nej | ID för uppgiften som ska frågas (det `task_id` som returnerades vid videokapning) |
| `trace_id` | string | Nej | Spårnings-ID för uppgiften som ska frågas, kan användas istället för `id` |
| `ids` | string\[] | Nej | Lista över uppgifts-ID:n för batchfråga, används med `retrieve_batch` |

> Vid fråga om en enskild uppgift, ange antingen `id` eller `trace_id`.

## Fråga en enskild uppgift

### CURL

```bash theme={null}
curl -X POST 'https://api.acedata.cloud/dreamina/tasks' \
-H 'accept: application/json' \
-H 'authorization: Bearer {token}' \
-H 'content-type: application/json' \
-d '{
  "action": "retrieve",
  "id": "362b4fed-67bd-11f1-ad11-00163e57d510"
}'
```

### Python

```python theme={null}
import requests

url = "https://api.acedata.cloud/dreamina/tasks"

headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json"
}

payload = {
    "action": "retrieve",
    "id": "362b4fed-67bd-11f1-ad11-00163e57d510"
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)
```

### Exempel på svar

När begäran lyckas returnerar API:t detaljer om uppgiften. `request` är begärningskroppen vid skapandet av uppgiften, `response` är svaret efter att uppgiften har slutförts, där `data.video_url` är adressen till den genererade digitala videon:

```json theme={null}
{
  "id": "362b4fed-67bd-11f1-ad11-00163e57d510",
  "started_at": 1769262721.823,
  "finished_at": 1769262769.123,
  "elapsed": 47.3,
  "trace_id": "a9063166-26ed-4451-85b5-54e896817c69",
  "request": {
    "model": "omnihuman-1.5",
    "image_url": "https://cdn.acedata.cloud/4hfydw.jpg",
    "audio_url": "https://cdn.acedata.cloud/6f7d62b18b.wav"
  },
  "response": {
    "success": true,
    "data": {
      "task_id": "362b4fed67bd11f1ad1100163e57d510",
      "status": "done",
      "video_url": "https://cdn.acedata.cloud/634d760216.mp4",
      "image_url": "https://cdn.acedata.cloud/4hfydw.jpg",
      "audio_url": "https://cdn.acedata.cloud/6f7d62b18b.wav"
    }
  }
}
```

Fältbeskrivning:

* `id`: Det unika ID:t för denna videogenereringsuppgift.
* `trace_id`: Spårnings-ID:t för denna begäran, används för felsökning.
* `request`: Innehållet i begäran som skickades vid skapandet av uppgiften.
* `response`: Innehållet i svaret som returneras efter att uppgiften har slutförts. När `response.data.status` är `done`, är `response.data.video_url` den slutliga videoadressen.
* `created_at`: Tiden då uppgiften skapades, Unix-tidsstämpel (sekunder, flyttal).
* `started_at`: Tiden då uppgiften började utföras, Unix-tidsstämpel (sekunder, flyttal).
* `finished_at`: Tiden då uppgiften slutfördes, Unix-tidsstämpel (sekunder, flyttal). Detta fält returneras inte om uppgiften inte är slutförd.
* `elapsed`: Tiden som uppgiften tog att utföra, i sekunder (flyttal, med 3 decimaler). Detta fält returneras inte om uppgiften inte är slutförd.

> Om uppgiften ännu inte är slutförd kan `status` vara ett annat än `done`; om uppgiften inte finns eller resultatet ännu inte har genererats, kommer API:t att returnera ett tomt objekt `{}`, vänligen försök igen senare.

## Batchfråga uppgifter

Ställ in `action` till `retrieve_batch` och skicka in en `ids`-array:

```bash theme={null}
curl -X POST 'https://api.acedata.cloud/dreamina/tasks' \
-H 'accept: application/json' \
-H 'authorization: Bearer {token}' \
-H 'content-type: application/json' \
-d '{
  "action": "retrieve_batch",
  "ids": [
    "362b4fed-67bd-11f1-ad11-00163e57d510",
    "0c0b4d3a-2f1e-4a6b-9c2d-2b3c4d5e6f70"
  ]
}'
```

I det returnerade resultatet är `items` en array med detaljer om batchuppgifterna (varje element har samma format som en enskild fråga), `count` är antalet uppgifter som returnerades denna gång.

## Felhantering

När API:t anropas och ett fel uppstår, returneras motsvarande felkod och meddelande:

* `400 bad_request`: Begäran är felaktig, det kan saknas nödvändiga parametrar som `id` / `trace_id`.
* `401 invalid_token`: Ej auktoriserad, auktoriseringstoken är ogiltig eller saknas.
* `429 too_many_requests`: För många begärningar, har överskridit hastighetsgränsen.
* `500 api_error`: Intern serverfel.

### Exempel på felrespons

```json theme={null}
{
  "error": {
    "code": "bad_request",
    "message": "id or trace_id is required to retrieve a task"
  },
  "trace_id": "2cf86e86-22a4-46e1-ac2f-032c0f2a4e89"
}
```

## Slutsats

Genom detta dokument har du lärt dig hur man använder Dreamina Tasks API för att fråga om resultatet av enskilda eller batch digitala videouppgifter. Tillsammans med genereringsgränssnittets `callback_url` / `async` asynkrona läge kan du uppnå stabil polling. Om du har några frågor, tveka inte att kontakta vårt tekniska supportteam.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.