# WithZero Scheduler - Fetch Task by ID

> WithZero Scheduler - Fetch Task by ID is a paid API for AI agents from agents.withzero.xyz, paid per call via MPP, price unknown, status healthy (last checked 2026-09-15, last successful call 2026-09-15).

Retrieves full metadata and status for a specific scheduled task, owner-gated by cryptographic proof, with environment variables always omitted from the response.

## Facts

- Endpoint: GET https://agents.withzero.xyz/api/v1/scheduler/tasks/{id}
- Price: price unknown
- Payment: MPP
- Status: healthy
- Last checked: 2026-09-15
- Last successful call: 2026-09-15
- Success rate: 100% of calls made through Zero
- Activations on Zero: 148
- Provider: agents.withzero.xyz
- Website: https://agents.withzero.xyz
- Canonical page: https://www.zero.xyz/c/agents-withzero-xyz-withzero-scheduler-fetch-task-by-id-aaa9afae
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_sn2ydkuMFcOOw7ygovxP0

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability agents-withzero-xyz-withzero-scheduler-fetch-task-by-id-aaa9afae
```

Example prompt: Can you pull up the full details for my scheduled task with ID 3f5a1b2c-4e6d-7890-abcd-ef1234567890 — I want to see its current status, cron schedule, last run time, and how much it's cost so far?

## When to prefer this

Use this endpoint when you need the complete current state of a specific known task — its schedule, billing, run history, pause status, and recovery hints. Prefer this over the task list endpoint when you already have the task ID and need deep detail on a single task. This is the right call when debugging a paused or failing task, verifying billing balances, or confirming scheduling configuration before triggering a run.

## Known failure modes

- Task ID not found — 404 if the UUID does not match any existing task
- Authorization failure — 401/403 if the caller cannot prove ownership of the task
- Invalid UUID format — 400 if the id path parameter is not a valid UUID
- Payment/access error — 402 if the x402 payment proof is missing or insufficient
- Task deleted — 404 if the task was previously deleted

## How this service works

Fetch a task. Owner-gated by proof. `env` is never returned. 📖 Full guide: https://scheduler.withzero.xyz/llms.txt

## Output

A JSON object containing the full task record including: UUID, owner identifier, status, billing rail (direct or zeroclick), cron expression, timezone, runtime, entrypoint, source, dependencies, tool list, LLM config, notification email, payment channel details (channel_id, open/close tx), cost metrics (max_amount_micros, cumulative cost, latest voucher, available balance, estimated ceiling, lifetime cost), execution stats (lifetime_runs, avg_cost_per_run_micros), scheduling info (next_run_at, last_run_at, end_at), pause metadata (last_paused_reason, last_paused_at, recovery_hint), and audit timestamps. Environment variables are never included in the response.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "id"
 ],
 "properties": {
  "id": {
   "type": "string"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "id",
  "owner",
  "status",
  "billing_rail",
  "cron",
  "timezone",
  "runtime",
  "entrypoint",
  "source",
  "dependencies",
  "tool_list",
  "llm",
  "notify_email",
  "max_runtime_sec",
  "max_sibling_calls",
  "channel_id",
  "channel_open_tx",
  "channel_close_tx",
  "max_amount_micros",
  "cumulative_cost_micros",
  "latest_voucher_micros",
  "balance_available_micros",
  "estimated_ceiling_micros",
  "lifetime_cost_micros",
  "lifetime_runs",
  "avg_cost_per_run_micros",
  "next_run_at",
  "last_run_at",
  "end_at",
  "last_paused_reason",
  "last_paused_at",
  "recovery_hint",
  "created_at",
  "updated_at"
 ],
 "properties": {
  "id": {
   "type": "string",
   "format": "uuid",
   "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
  },
  "llm": {
   "anyOf": [
    {},
    {
     "type": "null"
    }
   ]
  },
  "cron": {
   "anyOf": [
    {
     "type": "string"
    },
    {
     "type": "null"
    }
   ]
  },
  "owner": {
   "type": "string"
  },
  "end_at": {
   "anyOf": [
    {
     "type": "string"
    },
    {
     "type": "null"
    }
   ]
  },
  "source": {
   "type": "string"
  },
  "status": {
   "type": "string"
  },
  "runtime": {
   "type": "string"
  },
  "timezone": {
   "type": "string"
  },
  "tool_list": {
   "anyOf": [
    {
     "type": "array",
     "items": {
      "type": "string"
     }
    },
    {
     "type": "null"
    }
   ]
  },
  "channel_id": {
   "anyOf": [
    {
     "type": "string"
    },
    {
     "type": "null"
    }
   ],
   "description": "Direct rail payment channel/challenge id. Null on the ZeroClick rail."
  },
  "created_at": {
   "type": "string"
  },
  "entrypoint": {
   "type": "string"
  },
  "updated_at": {
   "type": "string"
  },
  "last_run_at": {
   "anyOf": [
    {
     "type": "string"
    },
    {
     "type": "null"
    }
   ]
  },
  "next_run_at": {
   "anyOf": [
    {
     "type": "string"
    },
    {
     "type": "null"
    }
   ]
  },
  "billing_rail": {
   "enum": [
    "direct",
    "zeroclick"
   ],
   "type": "string"
  },
  "dependencies": {
   "anyOf": [
    {},
    {
     "type": "null"
    }
   ]
  },
  "notify_email": {
   "anyOf": [
    {
     "type": "string"
    },
    {
     "type": "null"
    }
   ]
  },
  "lifetime_runs": {
   "type": "number"
 
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/agents-withzero-xyz-withzero-scheduler-fetch-task-by-id-aaa9afae/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from agents.withzero.xyz](https://www.zero.xyz/host/agents.withzero.xyz/llms.txt)
