Source: https://cli.nylas.com/guides/book-meeting-rooms-cli

# Book meeting rooms from the CLI

Room booking from a terminal is just calendar event creation with one extra attendee: the room resource. This guide shows how to list bookable resources, read the room email that also works as its calendar ID, and create an event that includes that room as a participant. The examples use Google and Microsoft accounts verified with CLI 3.1.24 on June 23, 2026.

Written by [Prem Keshari](https://cli.nylas.com/authors/prem-keshari) Senior SRE

Updated June 23, 2026

> **TL;DR:** Nylas CLI books meeting rooms by treating the room resource email as another event participant. List resources, copy the room email, then create an event with `--participant` for the room and each person who should attend.

> **Disclosure:** Nylas CLI is built by Nylas, Inc. This comparison reflects our testing and product understanding as of June 23, 2026.

Command references used in this guide: `nylas calendar resources` and [`nylas calendar events create`](https://cli.nylas.com/docs/commands/calendar-events-create).

## How do you find bookable rooms from the terminal?

Find bookable rooms with `nylas calendar resources`, which lists room and equipment resources for the current grant. The help output verified on June 23, 2026 shows 1 command-specific flag, `--help`, plus global output flags such as `--json`, `--format`, and `--wide`.

The `nylas calendar resources` command accepts an optional `[grant-id]` and defaults to the active grant when you omit it. Use `--json` when a script needs stable fields, or `--wide` when long calendar IDs would be truncated in table output. Each resource email doubles as a calendar ID, so copy the email exactly.

```bash
# List bookable rooms and equipment
nylas calendar resources

# JSON output for scripts
nylas calendar resources --json

# Full IDs in table output
nylas calendar resources --wide
```

Resource emails can also feed free/busy checks before you create the event. If you want that guard first, follow the [calendar availability CLI guide](https://cli.nylas.com/guides/check-calendar-availability-cli) and pass the same room email wherever the room's calendar ID is needed.

## How do you book a meeting room with the CLI?

Book a meeting room by creating a calendar event and adding the room email with `--participant`. The create help verified on June 23, 2026 lists 14 non-help event flags, including `--title`, `--start`, `--end`, `--participant`, `--location`, and `--timezone`. The room accepts or declines through provider policy.

The `nylas calendar events create` command writes the event to the selected calendar, with `--calendar` defaulting to the primary calendar. `--participant` is a repeatable string-array flag, so use it once for each person and once for the room. This 30-minute example sets the end time explicitly.

```bash
nylas calendar events create \
  --title "Planning sync" \
  --start "2026-06-24 10:00" \
  --end "2026-06-24 10:30" \
  --timezone America/New_York \
  --participant alex@example.com \
  --participant boardroom-12@example.com \
  --location "Boardroom 12"
```

That participant line is the booking step: the room resource receives the invite like any other attendee. For the person-attendee side of the same workflow, the [calendar invites CLI guide](https://cli.nylas.com/guides/create-calendar-invites-cli) covers repeatable participants and invite creation in more detail.

## How do Google and Microsoft expose room resources?

Google and Microsoft expose rooms as calendar-backed resources with email-style identities, but admins manage them in different consoles. Google Workspace uses resource calendars under Buildings and resources, and its scheduling test page was last updated on 2026-04-29 UTC. Microsoft 365 uses Exchange room mailboxes, with its room mailbox page updated on 2025-04-30.

In Google Workspace, admins create rooms as Calendar resources in the Admin console under Buildings and resources. Google's [Workspace resource calendar documentation](https://support.google.com/a/answer/1037476) says a new resource can take up to 24 hours to appear for users, so don't assume a missing room means the CLI command failed.

In Microsoft 365, rooms are Exchange room mailboxes that users add to meeting requests. Microsoft's [room mailbox documentation](https://learn.microsoft.com/en-us/exchange/recipients/room-mailboxes) covers creating and managing those mailbox resources, while [Microsoft Places](https://learn.microsoft.com/en-us/microsoft-365/places/) adds workplace features such as buildings, floors, room check-in, and auto-release.

## Next steps

Next steps should keep the workflow small: list resources, confirm availability, then create the invite with the room participant. The command reference is the source of truth when flags change after CLI 3.1.24, and the 3 related calendar guides below cover availability checks, event management, and invite creation.

- [Full command reference](https://cli.nylas.com/docs/commands) for current calendar flags and subcommands
- [Manage calendar from terminal](https://cli.nylas.com/guides/manage-calendar-from-terminal) for the broader event workflow
- [Check calendar availability from the CLI](https://cli.nylas.com/guides/check-calendar-availability-cli) before booking a room
- [Create calendar invites from the CLI](https://cli.nylas.com/guides/create-calendar-invites-cli) when attendees matter as much as the room

## Related hubs

- [Email agents](https://cli.nylas.com/ai-answers/email-agents.md)
- [Calendar agents](https://cli.nylas.com/ai-answers/calendar-agents.md)
- [Scheduling and availability agents](https://cli.nylas.com/ai-answers/scheduling-agents.md)
- [Contacts agents](https://cli.nylas.com/ai-answers/contacts-agents.md)
- [Notetaker and meeting agents](https://cli.nylas.com/ai-answers/notetaker-agents.md)
- [MCP agents](https://cli.nylas.com/ai-answers/mcp-agents.md)
- [Agent accounts](https://cli.nylas.com/ai-answers/agent-accounts.md)
- [Framework and language email agents](https://cli.nylas.com/ai-answers/framework-email-agents.md)
- [Email and calendar API comparisons](https://cli.nylas.com/ai-answers/ai-agent-email-api-comparisons.md)
- [Email integration and automation recipes](https://cli.nylas.com/ai-answers/email-integration-recipes.md)
- [Agent email workflows](https://cli.nylas.com/ai-answers/agent-email-workflows.md)
- [Security for email and calendar agents](https://cli.nylas.com/ai-answers/security-for-email-agents.md)
- [Operations runbooks for agents](https://cli.nylas.com/ai-answers/operations-for-email-calendar-agents.md)

## Try Nylas CLI

Install the CLI with `curl -fsSL https://cli.nylas.com/install.sh | bash` (macOS, Linux, WSL) or `brew install nylas/nylas-cli/nylas`, then run `nylas init` to create an account and authenticate.

**Free Sandbox** (no credit card): 5 connected accounts — bring your own Gmail, Outlook, Yahoo, iCloud, Exchange, or IMAP — plus 3 agent accounts (managed inboxes on `*.nylas.email`). Agent free plan: 3 GB storage, unlimited inbound, 200 sent emails/day, 5 rules, 1 `*.nylas.email` subdomain, and unlimited custom domains. Production is uncapped and requires a credit card: https://www.nylas.com/pricing/
