# ActionLayer via ZeroClick — Web Task Execution

> ActionLayer via ZeroClick — Web Task Execution is a paid API for AI agents from agents.actionlayer.io, paid per call via x402 or MPP, $1.5/call, status down (last checked 2026-10-13, last successful call 2026-09-02).

Submits a natural-language web task for end-to-end autonomous execution, then returns a task ID for polling until completion

## Facts

- Endpoint: POST https://agents.actionlayer.io/zeroclick/tasks?utm_source=zero.xyz
- Price: $1.5/call
- Payment: x402, MPP
- Status: down
- Last checked: 2026-10-13
- Last successful call: 2026-09-02
- Success rate: 54% of calls made through Zero
- Rating: 4.0 / 5 from 1 review
- Activations on Zero: 24
- Tags: x402
- Canonical page: https://www.zero.xyz/c/actionlayer-via-zeroclick-web-task-execution-2f67399d
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_1HurwwtzqX8pZ86Wgn1r8

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 actionlayer-via-zeroclick-web-task-execution-2f67399d -d '<json body>'
```

Example prompt: Go to OpenTable and book a table for 2 at a cozy Italian restaurant in the Mission District this Saturday at 7pm — my email is alex@example.com, and I want you to handle the whole thing end to end.

## When to prefer this

Choose this endpoint when you need an AI agent to autonomously complete a multi-step real-world web task — such as filling forms, making reservations, or navigating websites — that cannot be accomplished through a direct API. It is best when the task requires navigating a live browser session on behalf of a user. Prefer this over screen-scraping or headless browser tools when you want a managed, pay-per-task service with built-in identity and payment handling.

## Known failure modes

- Task fails if the target website is unreachable or has changed its layout
- Natural-language task description is ambiguous and the agent cannot resolve intent
- End user does not approve an in-task purchase, causing the task to halt
- Payment of $1.50 USDC per task fails due to insufficient wallet balance
- Polling timeout if the task takes longer than expected to complete
- Task is rejected if the end user email is missing or malformed

## How this service works

Accepts a task for asynchronous execution and returns the task object — poll `GET /zeroclick/tasks/{id}` for progress. Retried requests with the same `zc-request-id` return the original task and are never charged twice.

## Output

A task ID returned immediately upon submission, which the agent polls against the API until the task reaches a completed or failed state. On completion, the result includes the outcome of the web task (e.g. confirmation number, success message, or error details). Purchases within the task require explicit end-user wallet approval and are not covered by the per-task fee.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "title": "ZeroClickTaskRequest",
 "required": [
  "task",
  "email"
 ],
 "properties": {
  "task": {
   "type": "string",
   "title": "Task",
   "maxLength": 100000,
   "minLength": 1,
   "description": "The task, in natural language. Include every detail the task needs — addresses, dates, quantities, preferences."
  },
  "email": {
   "type": "string",
   "title": "Email",
   "maxLength": 254,
   "minLength": 3,
   "description": "The end user's email address. The task is attached to the ActionLayer account for this address (created if missing), and it's where the user is contacted if a payment needs their approval — get it right."
  }
 },
 "description": "Submit-task body — deliberately minimal: the task text carries\nevery detail; there are no other knobs on this surface."
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "title": "TicketResponse",
 "required": [
  "id",
  "state",
  "goal",
  "flow",
  "max_budget_usd",
  "webhook_url",
  "result",
  "error",
  "created_at",
  "updated_at",
  "completed_at"
 ],
 "properties": {
  "id": {
   "type": "string",
   "title": "Id"
  },
  "flow": {
   "anyOf": [
    {
     "type": "string"
    },
    {
     "type": "null"
    }
   ],
   "title": "Flow"
  },
  "goal": {
   "type": "string",
   "title": "Goal",
   "description": "The submitted task text; answered questions are folded in over time."
  },
  "error": {
   "anyOf": [
    {
     "type": "string"
    },
    {
     "type": "null"
    }
   ],
   "title": "Error",
   "description": "Machine-readable failure code when state is failed (e.g. `payment_rejected`)."
  },
  "state": {
   "type": "string",
   "title": "State",
   "description": "`pending | blocked_on_user | completed | failed | cancelled` — see the document description for how to handle each."
  },
  "reason": {
   "anyOf": [
    {
     "type": "string"
    },
    {
     "type": "null"
    }
   ],
   "title": "Reason",
   "description": "Human-readable summary, set when state is completed or failed."
  },
  "result": {
   "anyOf": [
    {
     "type": "object",
     "additionalProperties": true
    },
    {
     "type": "null"
    }
   ],
   "title": "Result",
   "description": "Structured output on completion: `{output, summary}`."
  },
  "created_at": {
   "type": "string",
   "title": "Created At",
   "format": "date-time"
  },
  "updated_at": {
   "type": "string",
   "title": "Updated At",
   "format": "date-time"
  },
  "webhook_url": {
   "anyOf": [
    {
     "type": "string"
    },
    {
     "type": "null"
    }
   ],
   "title": "Webhook Url",
   "description": "Not used on this surface; always null."
  },
  "completed_at": {
   "anyOf": [
    {
     "type": "string",
     "format": "date-time"
    },
    {
     "type": "null"
    }
   ],
   "title": "Completed At"
  },
  "info_request": {
   "anyOf": [
    {
     "type": "object",
     "additionalProperties": true
    },
    {
     "type": "null"
    }
   ],
   "title": "Info Request",
   "description": "Present while the task awaits user action: `{amount_usd?, merchant_name?, payment_status?, payment_error?, requested_fields, questions, note?, created_at, expires_at}`. See the document description for `payment_status` handling."
  },
  "max_budget_usd": {
   "anyOf": [
    {
     "type": "number"
    },
    {
     "type": "null"
 
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/actionlayer-via-zeroclick-web-task-execution-2f67399d/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from agents.actionlayer.io](https://www.zero.xyz/host/agents.actionlayer.io/llms.txt)
