Skip to content

Calendar API

Save events to Google Calendar, Outlook / Microsoft 365, Apple and Yahoo calendars. Standards-compliant .ics files and email invites (with updates and cancellations), one-click "add to calendar" links, personal subscribe feeds, and automatic sync to users' own Google and Outlook calendars.

Utility Premium

Overview

Integrate the Calendar API into your applications with ease. This API offers high performance, reliability, and comprehensive documentation to get you started quickly.

Documentation

Put your events in your users' own calendars. One call gives you "add to Google / Outlook / Office 365 / Yahoo / Apple" links, a standards-compliant .ics invite for your emails, and, for users who connect their Google or Outlook account, an automatic copy in their calendar that moves when you reschedule and disappears when you cancel.

Base URL

https://devapi.autoplannerx.com/api/v1/calendar

Send your key in the X-API-Key header from your server. Links returned by the API never contain your key, and clicks on them are not billed.

Endpoints

MethodPathWhat it does
POST/eventsCreate or update an event by your own external_id. Returns links, sync results and (with include_ics) the .ics text.
GET/events/{external_id}The stored event, its links and where it is synced.
DELETE/events/{external_id}Cancel it: removed from connected calendars; links serve a cancelled event.
GET/events/{external_id}/ics?method=request.ics file (publish, request for email invites, cancel).
GET/events/{external_id}/linksJust the "add to calendar" links.
POST/links, /icsOne-off links or .ics without storing anything.
POST/connectStart a Google or Outlook sign-in for one of your users; returns authorize_url.
GET / DELETE/connections, /connections/{id}List or remove a user's connected calendars.
POST/feedsA personal subscribe (webcal) feed of the user's events.
POST /events

Calling it again with the same external_id updates the event (same UID, higher SEQUENCE), so calendars replace it instead of adding a duplicate. Repeating an identical call changes nothing.

curl -X POST "https://devapi.autoplannerx.com/api/v1/calendar/events" \
  -H "X-API-Key: YOUR_API_KEY" -H "Content-Type: application/json" \
  -d '{
    "external_id": "interview:55",
    "title": "Interview: Jane Moyo",
    "start": "2026-11-02 09:30",
    "end": "2026-11-02 10:15",
    "timezone": "Africa/Johannesburg",
    "location": "Boardroom 2",
    "reminders": [15],
    "category": "interviews",
    "organizer": {"name": "Acme HR", "email": "hr@acme.example"},
    "attendees": [{"name": "Jane Moyo", "email": "jane@example.com"}],
    "recipients": [{"ref": "user:7", "email": "lerato@acme.example"}],
    "sync_to": ["user:7"],
    "include_ics": "request"
  }'

All-day events: "all_day": true with dates; end is the last day (inclusive).

The full guide, including connecting Google and Outlook accounts and subscribe feeds, is in docs/CALENDAR_API_V2.md. The original / (download) and /url endpoints of the ICS generator still work.

Calendar Compatibility

  • Google Calendar (links, invites, auto-sync)
  • Outlook.com and Microsoft 365 (links, invites, auto-sync)
  • Outlook desktop and Apple Calendar (.ics, invites, feeds)
  • Yahoo Calendar (links)
  • Any iCalendar (RFC 5545) application

Code Examples

Pick an endpoint and a language. Replace YOUR_API_KEY with a key from your dashboard.

POST /events · cURL
curl -X POST "https://devapi.autoplannerx.com/api/v1/calendar-ics-generator/events" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"external_id":"meeting:1","title":"Team Meeting","start":"2026-12-20 14:00","end":"2026-12-20 15:30","timezone":"Africa/Johannesburg","location":"Conference Room A","reminders":[15]}'

Try It

Requests go to the live gateway with your key. They count toward your rate limit and are billed like any other call ($0.0300 per call before account discounts). Your key is only used for this request and is never saved.