# Fajls

Mudelli li jaċċettaw immaġnijiet, vidjo jew awdjo jaċċettawhom fi kwalunkwe waħda minn tliet forom. Kull paġna tal-mudell timmarka l-parametri tal-fajls tagħha (pereżempju `image`, `images`, `videos`, `audios`).

## 1. URL pubbliku

Kwalunkwe URL `https://` (jew `http://`) li l-mudell jista' jniżżel:

```json
{ "image": "https://example.com/photos/product.jpg" }
```

Il-fajl irid ikun aċċessibbli mingħajr cookies jew login, u jibqa' aċċessibbli sakemm tkun bdiet it-talba. Kull paġna tal-mudell telenka l-limiti tad-daqs u tad-dimensjonijiet tal-parametri tal-fajls tiegħu.

## 2. URI tad-dejta

Fajls żgħar jistgħu jidħlu inline bħala URI `data:` sa 10 MB:

```json
{ "image": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA..." }
```

Base64 iżid il-korp b'madwar terz tad-daqs tal-fajl, għalhekk ippreferi uploads għal kull ħaġa kbira.

## 3. Upload

Għal fajls lokali, itlob URL tal-upload, agħmel `PUT` tal-bytes hemmhekk, u għaddi l-`file_url` ritornat lill-mudell. Il-ħolqien tal-URL tal-upload huwa b'xejn.

```bash 1 · Ikseb URL tal-upload
curl -X POST "https://api.doitong.com/v1/files" \
  -H "Authorization: Bearer $DOITONG_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"filename": "product.jpg", "content_type": "image/jpeg", "size": 482113}'
```

```json 201 Created · upload
{
  "object": "upload",
  "upload_url": "https://…signed upload URL…",
  "file_url": "https://content.doitong.com/…/product.jpg",
  "method": "PUT",
  "headers": { "Content-Type": "image/jpeg" },
  "content_type": "image/jpeg",
  "expires_in": 3600,
  "max_bytes": 15728640
}
```

```bash 2 · Ittella' l-bytes bil-headers ritornati eżattament
curl -X PUT "<upload_url>" -H "Content-Type: image/jpeg" --data-binary @product.jpg
```

```bash 3 · Uża file_url bħala l-input tal-mudell
curl -X POST "https://api.doitong.com/v1/run/{model_id}?wait=20" \
  -H "Authorization: Bearer $DOITONG_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"image": "https://content.doitong.com/…/product.jpg", "prompt": "..."}'
```

- Uploads appoġġjati: `.jpg`, `.jpeg`, `.png`, `.webp` (sa 15 MB) u `.mp4`, `.mov`, `.webm` (sa 200 MB). L-estensjoni tistabbilixxi t-tip; `content_type` irid jaqbel magħha.
- L-URL tal-upload huwa validu għal siegħa. Il-`file_url` jibqa' validu.
- Għall-awdjo, uża URL pubbliku jew URI tad-dejta.

## Fajls tal-output

> [!TIP]
> Il-fajls iġġenerati jiġu kkupjati fil-ħażna tagħna u rritornati f'`outputs[].url` bħala links fuq `content.doitong.com`. Tista' tgħaddihom direttament lil mudell ieħor, pereżempju immaġni minn mudell text-to-image lil mudell image-to-video.

Int tagħżel kemm jinżammu l-fajls tal-output:

- **Għal dejjem** (`permanent`, il-prestabbilit): sakemm tħassarhom, għal 100 krediti tal-API ($0.10) għal kull GB fix-xahar, iċċarġjati darba kuljum mill-bilanċ tal-API (1 GB = 1024³ bytes).
- **7 jum** (`temporary`): b'xejn, imbagħad jitħassru mill-ħażna tagħna.

Issettja l-prestabbilit bis-swiċċ "Żomm il-fajls għal dejjem" fid-[dashboard](https://doitong.com/developers/dashboard#balance) jew b'`PATCH /account/storage`, u jegħlbu għal kull eżekuzzjoni b'`?storage=temporary` (jew `permanent`):

```bash
curl -X PATCH "https://api.doitong.com/v1/account/storage" \
  -H "Authorization: Bearer $DOITONG_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"mode": "temporary"}'
```

Kull talba turi l-`storage` tagħha stess (`mode`, `bytes`, `expires_at`, `expired`). L-issettjar japplika għal talbiet ġodda; fajls li diġà żżomm għal dejjem jibqgħu sakemm tħassarhom b'`DELETE /requests/{id}/files` (ara [Talbiet](https://doitong.com/developers/docs/requests#delete-files)). Jekk il-bilanċ tal-API ma jkunx jista' jħallas għall-ħażna, tirċievi email u jkollok 30 jum biex tagħmel top-up qabel ma l-fajls miżmuma jsiru temporanji.
