List Tasks

GET /tasks

Returns a paginated list of tasks. Use filters to find tasks by kind, status, or input URL. For the CLI equivalent, see ittybit tasks list.

Parameters

ParamTypeDescription
kindstringFilter: video · audio · image · adaptive_video
statusstringFilter: queued · processing · succeeded · failed · cancelled
inputstringFilter by input URL (exact match)
limitinteger1–100 (default 20)
afterstringCursor — items after this ID
beforestringCursor — items before this ID
orderstringasc · desc (default desc)

Examples

List recent video tasks:

curl "https://api.ittybit.com/tasks?kind=video&limit=10" \
  -H "Authorization: Bearer $ITTYBIT_API_KEY"
const res = await fetch("https://api.ittybit.com/tasks?kind=video&limit=10", {
  headers: {
    "Authorization": `Bearer ${process.env.ITTYBIT_API_KEY}`,
  },
});
const tasks = await res.json();
import requests

res = requests.get(
    "https://api.ittybit.com/tasks?kind=video&limit=10",
    headers={"Authorization": f"Bearer {api_key}"},
)
tasks = res.json()

List failed tasks:

curl "https://api.ittybit.com/tasks?status=failed&limit=20" \
  -H "Authorization: Bearer $ITTYBIT_API_KEY"
const res = await fetch("https://api.ittybit.com/tasks?status=failed&limit=20", {
  headers: {
    "Authorization": `Bearer ${process.env.ITTYBIT_API_KEY}`,
  },
});
const tasks = await res.json();
import requests

res = requests.get(
    "https://api.ittybit.com/tasks?status=failed&limit=20",
    headers={"Authorization": f"Bearer {api_key}"},
)
tasks = res.json()

Response 200

[
  {
    "id": "task_abc123",
    "object": "task",
    "kind": "video",
    "input": "https://example.com/video.mp4",
    "output": "https://store.ittybit.net/org_123/video.mp4",
    "options": {"format": "mp4", "quality": "high"},
    "metadata": {},
    "status": "succeeded",
    "error": null,
    "created_at": 1711900000000,
    "started_at": 1711900001000,
    "finished_at": 1711900045000,
    "updated_at": 1711900045000
  }
]

See also