Guide

RSVP to Calendar Invites from the Terminal

An invite needs a response, and the organizer's view depends on it. Doing that through five different web calendars is tedious; doing it through their APIs means OAuth and per-provider participant models. The Nylas CLI sets your RSVP — accepted, declined, or tentative — with one command, and the provider relays the status to the organizer. This guide shows how to find an invite, respond with an optional note, and confirm the organizer sees your answer.

Written by Nick Barraclough Product Manager

VerifiedCLI 3.1.16 · Gmail, Outlook · last tested June 8, 2026

Command references used in this guide: nylas calendar events list, nylas calendar events rsvp, and nylas calendar events show.

How do you RSVP to a calendar invite from the terminal?

You RSVP with nylas calendar events rsvp EVENT_ID STATUS, where status is yes, no, or maybe. The CLI sets your participant status on the event, and the calendar provider relays it to the organizer as an iCalendar reply. The three statuses map to the standard ACCEPTED, DECLINED, and TENTATIVE values defined in RFC 5545 (iCalendar).

Find the event ID first with nylas calendar events list --json, which returns upcoming events including ones you've been invited to. After connecting once with nylas auth login, the list-then-respond flow takes under a minute. Because the status is relayed by the provider, the organizer sees your answer in their calendar exactly as if you'd clicked “Accept” in the web UI.

# 1) Find the invite's event ID
nylas calendar events list --json --limit 20

# 2) Respond: yes / no / maybe
nylas calendar events rsvp event_abc123 yes
nylas calendar events rsvp event_abc123 no
nylas calendar events rsvp event_abc123 maybe

How do you add a note to your response?

Add a note with --comment, which attaches a short message to your reply — useful when you decline and want to explain, or accept with a caveat. The comment travels with the iCalendar reply, so the organizer sees both your status and your note. It's the terminal equivalent of the “add a message” box on a web invite.

Keep comments short; they're a courtesy line, not a thread. A decline with “conflict — please share notes” tells the organizer what they need in one sentence. If you're scripting responses, the comment can be templated per meeting type, but a person reading it should still recognize it as a real reply, not boilerplate.

# Decline with a short explanation
nylas calendar events rsvp event_abc123 no \
  --comment "Conflict at that time — please send notes."

# Tentatively accept with a caveat
nylas calendar events rsvp event_abc123 maybe \
  --comment "Joining for the first 20 minutes only."

How do you confirm your RSVP went through?

Confirm by inspecting the event with nylas calendar events show --id EVENT_ID --json and checking your participant status. The participants array carries each attendee's status, so you can verify yours flipped to the value you set. If it shows the new status, the reply reached the organizer's calendar.

For an inbox that fills with invites, script the loop: list events, filter to ones where your status is still pending, and respond in bulk by rule. A standup you always accept can be auto-RSVP'd, while anything ambiguous is left for a human. The JSON output makes that filter a one-liner rather than a manual sweep through five calendars.

# Check your own participant status on the event
nylas calendar events show --id event_abc123 --json \
  | jq '.participants[] | select(.email=="you@company.com")'

Next steps