YOUR SPACE, CONNECTED
Your week.
Within reach.
Build an Apple Shortcut to upload a snapshot of selected calendar events for the next seven days to your PC.
1. Create a token from your phone’s HTTPS address
First finish phone access in Nemo on your computer. On your iPhone, open Nemo at its HTTPS address, pair the phone, then open menu → Connected accounts → Calendar → Create sync token. This supplies the phone endpoint directly. When you create a token on the PC, Nemo uses its saved private HTTPS address; if that address is not configured, it shows a setup notice instead of a loopback endpoint.
Copy the displayed endpoint and token into your private Shortcut. An endpoint ends in /api/calendar/import. Do not substitute localhost or 127.0.0.1: on the iPhone those refer to the phone itself. Use Authorization: Bearer YOUR_TOKEN as the request header; never add it to the URL. The token expires after 30 days; replacing it revokes the previous token.
2. Build “Nemo Sync Calendar”
In Apple’s Shortcuts app, create a shortcut with that exact name. The names below describe the intended actions and values; controls can vary with iOS version and language. Use the variable picker to select action outputs, rather than typing variable names as ordinary text. Apple’s variable instructions
- Define the window. Take Current Date and save it as
Window Start. Use Adjust Date to add seven days to that date and save it asWindow End. Format each with Format Date using ISO 8601; save the text outputs asRange StartandRange End. The dates must include a time-zone offset orZ. Apple’s timestamp guidance - Find the events. Add Find Calendar Events, limited to calendars you choose and events whose start date falls between the two window dates. Sort by start date, earliest first; limit to 200. This initial filter finds events starting in the window, so it can miss an event that started earlier and is still running.
- Make an event dictionary per result. Use Repeat with Each on the found events. Within the loop, get the current
Repeat Item’s title, start date, and end date. Format both event dates as ISO 8601. Make the final action inside the loop a Dictionary with three Text values:title= that event’s title;start= its formatted start;end= its formatted end. The loop’sRepeat Resultsshould be a list of these dictionaries, one per event. Save it asEvents. Apple’s Repeat Results guidance - Build the payload as a Dictionary. Create top-level keys
events,rangeStart, andrangeEnd. Theeventsvalue must be the entireEventslist, preserving each item as a dictionary. The other two values are the formatted range text variables. Save this dictionary asPayload. For zero found events, explicitly use an empty Array forevents. Optional: add TexttimeZonewith an IANA name such asAustralia/Sydney. Apple’s typed dictionary values - Preview before uploading. Add Quick Look with
Payloadselected as its input. Check thateventscontains dictionaries, not event objects, a text string, or a second list wrapped around your list. For a first run, use one harmless test appointment on a calendar you chose. Quick Look can also previewEventsimmediately after the loop. Apple’s action testing guidance - Configure the JSON request. Add a URL action with the exact private HTTPS endpoint copied from Nemo. Add Get Contents of URL, expand its options, set Method to POST, and set Request Body to JSON. Set headers
Content-Type=application/jsonandAuthorization=Bearer YOUR_TOKEN, with one space afterBearer. ReplaceYOUR_TOKENwith the actual token. SupplyPayloadas the body dictionary through the variable selector if your editor offers it. If it instead shows editable body rows, enter the same top-level keys there using the same typed values and variables. Do not add a wrapper key namedPayload. Apple’s JSON request-body guidance - Inspect the response. Add Quick Look after the request, with the request’s response selected. Run manually and approve the calendar and network access you intend to grant. A successful upload returns
"ok": true. Return to Nemo → menu → Connected accounts → Refresh status and verify its last-sync time and event count.
If the date formatter offers a custom pattern, use yyyy-MM-dd'T'HH:mm:ssXXX for the required seconds and colon time-zone offset.
Expected body and troubleshooting
This is the JSON shape the request must send. The dates are illustrative only; the Shortcut must generate current dates each run.
{
"events": [
{
"title": "Example appointment",
"start": "2026-10-21T14:00:00+11:00",
"end": "2026-10-21T14:30:00+11:00"
}
],
"rangeStart": "2026-10-21T08:00:00+11:00",
"rangeEnd": "2026-10-28T08:00:00+11:00",
"timeZone": "Australia/Sydney"
}
An empty window needs "events": [], with both current range fields still present. Optional per-event allDay must be a Boolean if included. Omit notes, attendees, locations, and attachments.
- “events array”: check the array type and dictionary items; do not send the list as text or nest the whole list as one array element.
- “valid JSON”: check Request Body is JSON and the top-level body is the dictionary shown above. Use typed values rather than hand-building JSON text from appointment titles.
- Unauthorized: check the private token, its expiry, and the
Bearerheader. A replacement token requires updating the Shortcut. - Cannot connect: keep Nemo running on the computer and check that phone access is ready; confirm the exact HTTPS address opens in Safari over cellular.
Each successful upload replaces the previous snapshot, so removed events disappear. An empty upload clears the events in that snapshot. Disconnecting Calendar deletes the snapshot and revokes its token. Do not put the token in chat, URLs, or screenshots.
3. Ask about your day
Open Connected accounts from Nemo’s menu and enable Allow Nemo to use connected tools and ask “What does my day look like?” This preference stays on for later questions until you switch it off. While enabled, selected calendar information and Gmail summaries are added to new questions sent through your existing Hermes cloud AI. Switching it off or disconnecting does not erase information already sent or existing chat history.
Run my calendar Shortcut ↗This button runs an existing shortcut with that exact name; it does not create or install one. Apple’s documented run URL scheme
Keep it up to date
First verify a manual upload on the iPhone over cellular, including an empty calendar and the expected time zone. This is not a continuous calendar sync service. Then consider a Time of Day personal automation. Locked-phone execution, permissions, background timing, and the phone connection still require testing on your device. Until then, refresh by running the Shortcut manually.
This token uploads only to your personal profile. Each family member creates their own token and Shortcut. Your paired devices can use your synced calendar when you allow connected tools in Settings. This guide was checked against Apple’s documentation on 21 October 2026; the native Shortcut’s full device flow remains unverified.