{"uid":"cap_ItkYndjuZ7OXu2TD-6-o_","slug":"x402-deployer-x402-deployer-workers-dev-0e9810fa","name":"CSV to ICS Calendar File Generator","description":"CSV to ICS / CSV to iCal / calendar file generator / .ics builder / Google Calendar + Outlook + Apple Calendar import. RFC 5545 compliant VCALENDAR/VEVENT output. Auto-detects column mapping (summary, date, time, location, description) or accepts an explicit mapping. Handles all-day and timed events, configurable default duration, custom delimiters. Up to 1000 rows. Pure parser, no upstream API.","url":"https://x402-deployer.x402-deployer.workers.dev/csv-to-ics","method":"POST","headers":{},"bodySchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input"],"properties":{"input":{"type":"object","required":["type","method","bodyType","body"],"properties":{"body":{"required":["csv"],"properties":{"csv":{"type":"string","description":"Raw CSV text. First row is treated as the header unless overridden. Up to 1000 data rows."},"columns":{"type":"object","description":"Optional explicit column mapping, e.g. { summary: 'Title', start_date: 'Date', start_time: 'Time', location: 'Where', description: 'Notes' }. Auto-detected from header names when omitted."},"delimiter":{"type":"string","description":"CSV delimiter character. Default ','. Use '\\t' for TSV, ';' for European CSV, '|' for pipe-delimited."},"calendar_name":{"type":"string","description":"X-WR-CALNAME shown by calendar clients. Default 'Schedule'."},"default_duration_minutes":{"type":"number","description":"Event duration in minutes when no end time/date is provided. Default 60."}}},"type":{"type":"string","const":"http"},"method":{"enum":["POST"],"type":"string"},"bodyType":{"enum":["json","form-data","text"],"type":"string"}},"additionalProperties":false},"output":{"type":"object","required":["type"],"properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"ics":{"type":"string"},"errors":{"type":"array"},"mime_type":{"type":"string"},"event_count":{"type":"integer"},"skipped_rows":{"type":"integer"},"calendar_name":{"type":"string"}}}}}}},"responseSchema":null,"example":{"request":{"input":{"body":{"csv":"Summary,Date,Start Time,Location,Description\nTeam Standup,2024-01-15,09:00 AM,Conference Room A,Daily sync\nProject Review,2024-01-15,02:00 PM,Virtual,Quarterly review\nClient Meeting,2024-01-16,10:30 AM,Office Building B,Discuss requirements","calendar_name":"Test Calendar","default_duration_minutes":60},"type":"http","method":"POST","bodyType":"json"}},"response":{"ics":"BEGIN:VCALENDAR\r\nVERSION:2.0\r\nPRODID:-//x402.bankr.bot//csv-to-ics//EN\r\nCALSCALE:GREGORIAN\r\nMETHOD:PUBLISH\r\nX-WR-CALNAME:Test Calendar\r\nBEGIN:VEVENT\r\nUID:mq1joyy5-mrtnpdbe@x402.bankr.bot\r\nDTSTAMP:20260605T231814Z\r\nSUMMARY:Team Standup\r\nDTSTART:20240115T090000\r\nDTEND:20240115T100000\r\nLOCATION:Conference Room A\r\nDESCRIPTION:Daily sync\r\nEND:VEVENT\r\nBEGIN:VEVENT\r\nUID:mq1joyy5-n0h3mi85@x402.bankr.bot\r\nDTSTAMP:20260605T231814Z\r\nSUMMARY:Project Review\r\nDTSTART:20240115T140000\r\nDTEND:20240115T150000\r\nLOCATION:Virtual\r\nDESCRIPTION:Quarterly review\r\nEND:VEVENT\r\nBEGIN:VEVENT\r\nUID:mq1joyy5-gavtkqim@x402.bankr.bot\r\nDTSTAMP:20260605T231814Z\r\nSUMMARY:Client Meeting\r\nDTSTART:20240116T103000\r\nDTEND:20240116T113000\r\nLOCATION:Office Building B\r\nDESCRIPTION:Discuss requirements\r\nEND:VEVENT\r\nEND:VCALENDAR\r\n","errors":[],"mime_type":"text/calendar","event_count":3,"skipped_rows":0,"calendar_name":"Test Calendar"}},"exampleRequest":{"csv":"Summary,Date,Start Time,Location,Description\nTeam Standup,2024-01-15,09:00 AM,Conference Room A,Daily sync\nProject Review,2024-01-15,02:00 PM,Virtual,Quarterly review\nClient Meeting,2024-01-16,10:30 AM,Office Building B,Discuss requirements","calendar_name":"Test Calendar","default_duration_minutes":60},"tags":["x402"],"displayCostAmount":"0.01","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"settled","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.01/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.01","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.01","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_U7AXLVipiaaz1_NGi_kiO","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.01","costPer":"request","priority":0,"asset":null,"unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Converts a CSV file of events into an RFC 5545-compliant ICS/iCal file importable into Google Calendar, Outlook, and Apple Calendar","exampleAgentPrompt":"Take this CSV of events — columns are title, date, start_time, location, notes — and convert it into a .ics calendar file I can import into Google Calendar or Outlook, treating any event without a time as all-day and defaulting to 1-hour duration for timed events.","exampleUseCases":null,"resultDescription":"Returns an RFC 5545-compliant VCALENDAR/VEVENT ICS file with one VEVENT per CSV row, including SUMMARY, DTSTART, DTEND (or DATE for all-day events), LOCATION, and DESCRIPTION fields as mapped from the CSV columns. Up to 1000 events per call.","failureModes":["CSV exceeds 1000 rows — truncation or rejection","Ambiguous or missing date column — parsing error returned","Malformed date/time values in CSV rows — individual events may be skipped or errored","Unrecognized delimiter — parse failure","Missing required summary/date columns with no explicit mapping — mapping error"],"whenToPreferThis":"Choose this endpoint when you need a pure, serverless CSV-to-ICS conversion with no external API dependencies, auto-detection of common column names, support for both all-day and timed events, configurable delimiters, and RFC 5545 compliance for broad calendar app compatibility. Ideal when you already have event data in CSV/spreadsheet form and need a calendar file without setting up a full calendar service.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-14T06:51:46.696Z","isFirstParty":false}