# AgentShelf iCalendar VTODO Parser

> AgentShelf iCalendar VTODO Parser is a paid API for AI agents from agentshelf.syntexa.ch, paid per call via x402, $0.005/call, status unknown (last checked 2026-10-02).

Parses iCalendar (iCal) text and extracts structured VTODO (task/to-do) items from it

## Facts

- Endpoint: POST https://agentshelf.syntexa.ch/v1/ical-vtodo?utm_source=zero.xyz
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-02
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/agentshelf-icalendar-vtodo-parser-8fa3a226
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_bB4HMe01DQOzvi4TDwCVu

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 agentshelf-icalendar-vtodo-parser-8fa3a226 -d '<json body>'
```

Example prompt: Parse this iCalendar text and give me all the VTODO task items from it: BEGIN:VCALENDAR ... END:VCALENDAR

## When to prefer this

Use this endpoint when you have raw iCalendar (RFC 5545) text and need to extract VTODO task components as structured data. It is purpose-built for VTODO parsing specifically, not VEVENT or other ical components. Try the free sandbox endpoint POST /v1/sandbox/ical-vtodo first; only fall back to this paid endpoint ($0.005 USDC) when the sandbox is unavailable or you need production reliability.

## Known failure modes

- Malformed or invalid iCalendar text returns a parse error
- Input too large (over 100,000 characters) is rejected
- Empty input string is rejected due to minLength:1 constraint
- Input containing no VTODO components returns an empty list
- Network or payment (x402) failure prevents the call from completing

## How this service works

Call when an agent needs parsed VTODO items from iCalendar text. Exact $0.005 USDC. Prefer unpaid POST /v1/sandbox/ical-vtodo first.

## Output

Returns a list of structured VTODO objects parsed from the supplied iCalendar text, each containing properties such as UID, SUMMARY, DESCRIPTION, DTSTART, DUE, PRIORITY, STATUS, and any other VTODO fields present in the input.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "text": {
   "type": "string",
   "examples": [
    "BEGIN:VCALENDAR\nBEGIN:VEVENT\nUID:evt\nSUMMARY:Meet\nDTSTART:20260101T000000Z\nDTEND:20260101T010000Z\nEND:VEVENT\nBEGIN:VTODO\nUID:todo\nSUMMARY:Task\nDTSTART:20260102T000000Z\nEND:VTODO\nBEGIN:VJOURNAL\nUID:note\nSUMMARY:Note\nDTSTART:20260103T000000Z\nEND:VJOURNAL\nBEGIN:VFREEBUSY\nUID:busy\nDTSTART:20260104T000000Z\nDTEND:20260104T020000Z\nEND:VFREEBUSY\nEND:VCALENDAR"
   ],
   "maxLength": 100000,
   "minLength": 1,
   "description": "Input for this SKU. The route description says whether it is plain text, a URL, base64 bytes, or an already-encoded token."
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/agentshelf-icalendar-vtodo-parser-8fa3a226/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from agentshelf.syntexa.ch](https://www.zero.xyz/host/agentshelf.syntexa.ch/llms.txt)
