vMira
Cal logo

Connect Cal to vMira

Chat with Cal and automate it — add member to team in Cal, on demand or on a schedule. One-click connect, then use it across web, WhatsApp, Telegram, Instagram, Messenger and LINE.

Use it anywhere you chat

Run Cal from the chat you already use.

Connect Cal once and use it from WhatsApp, Instagram, Telegram, Messenger, LINE — or the web. One account, same history and connected apps across every surface.

Scheduling & Booking

What Cal does — and what Mira does with it.

Cal simplifies meeting coordination by providing shareable booking pages, calendar syncing, and availability management to streamline the scheduling process.

168 chat actionsOne-click connectLeast-privilege & revocableScheduling & BookingCalendar

From any chat

What Mira can do with Cal.

100+ Cal actions, run in plain language from the web or any messaging app — WhatsApp, Instagram, Telegram, Messenger or LINE. Just ask; Mira maps it to the right action and runs it on your account.

Add member to team

Adds a new member to a specified team within an organization by creating a team membership.

Add organization attribute option

Adds a new option to an organization's attribute, requiring a display `value` and a `slug` unique for that attribute.

Delete oauth client webhook

Permanently deletes a specific webhook subscription of an oauth client in the cal application, stopping its notifications.

Cancel booking via uid

Cancels an existing and active cal.com booking using its unique identifier (uid).

Check calendar availability

Retrieves free/busy availability for a specified calendar to aid scheduling without revealing event details; requires an existing, accessible calendar, noting that data granular...

Check gcal synchronization status

Call this read-only action to verify the connection and synchronization status of a user's google calendar integration with cal.

Check ics feed calendar endpoint

Checks an ics feed url (expected as a query parameter) to verify its validity, accessibility, and icalendar data integrity.

Check Stripe status

Verifies if stripe is correctly connected to the cal scheduling system and functional for processing payments, reporting only on the integration's status.

Check team stripe integration status

Retrieves the stripe integration status and related information for a team, primarily to verify account connection, subscription details, or payment setup; this is a read-only o...

Confirm booking by uid

Confirms an existing booking by `bookinguid` if the booking exists and is in a state allowing confirmation (e.g., not already cancelled or confirmed); this finalizes the booking...

Connect to calendar

Initiates or checks the external connection status for a specified calendar, possibly returning a redirect url for user authorization to complete integration, without altering c...

Create membership for organization

Creates a new membership or updates an existing one for a user within an organization; the user specified by userid must already exist in the system.

Create oauth client user

Creates a new managed user for an oauth client, setting profile and scheduling preferences; if `timezone` is not provided, a default schedule (mon-fri, 9am-5pm) is not created,...

Create OAuth client webhook configuration

Creates a webhook for an existing oauth client to send real-time cal.com event notifications (e.g., `booking created`, `meeting ended`) to the `subscriberurl`, enabling integrat...

Create organization attributes

Creates a new custom attribute for an existing organization, used to enhance data collection for event bookings or user profiles.

Create organization webhook by org ID

Creates a webhook for a specified, existing organization, sending notifications for selected trigger events to a designated, publicly accessible subscriber url that accepts post...

Create or update team profile

Creates a new team profile, or updates one if a 'slug' matches, customizing branding, scheduling, privacy, and operational details.

Create phone call event

Schedules a phone call event in cal.com using existing eventtype, organization, and team ids; this action only registers the event details and does not initiate the actual phone...

Create phone call for event type

Creates a phone call template associated with an existing event type and team, for defining reusable call configurations like numbers and scripts; note this does not initiate an...

Create team event type

Creates a new event type for a specified team in cal.com; ensure `teamid`, any provided `scheduleid`, `hosts.userid`, and `destinationcalendar` details are valid and accessible.

Create team event types with custom options

Creates a highly customizable cal.com team event type with extensive scheduling, booking, and host assignment options; `lengthinminutes` (as string) must be included in `lengthi...

Create team in organization

Creates a new team with customizable attributes within an existing and accessible cal.com organization specified by orgid.

Create team membership with role

Adds a user to a team with a specified role, acceptance status, and impersonation settings; ensure `teamid` and `userid` refer to existing, valid entities.

Create user availability schedule

Creates a cal.com user availability schedule, defining its name, timezone, weekly recurring availability, and specific date overrides; if `isdefault` is true, this schedule repl...

Create user schedule in organization

Creates a new schedule defining a user's availability with weekly slots and date-specific overrides in an organization; setting 'isdefault' to true may replace an existing defau...

Create webhook for event type

Creates a webhook for an existing `eventtypeid` in cal.com, sending notifications for specified `triggers` to a `subscriberurl` that handles post requests.

Decline booking with reason

Declines a pending booking using its bookinguid, optionally with a reason; this action is irreversible and applies only to bookings awaiting confirmation.

Delete conference app connection

Disconnects the specified conferencing application (e.g., 'zoom', 'google meet') for the cal.com account, immediately terminating any ongoing call or meeting; use with caution.

Delete event type by id

Permanently deletes an existing event type by its id, which invalidates its scheduling links; the operation is irreversible, and while existing bookings are unaffected, no new b...

Delete event type in team

Permanently removes an event type's configuration from a team's scheduling options (e.g., for cleanup); this action is irreversible and requires the event type to be associated...

Delete membership in team

Use to permanently remove a user's membership from a specific team within an organization, which revokes their team-associated access but does not remove them from the organizat...

Delete oauth client user

Irreversibly revokes a specific user's association with a given oauth client, without deleting the user's cal account.

Delete organization attribute

Permanently deletes an existing attribute (specified by `attributeid`) from an existing organization (specified by `orgid`); this action is irreversible and may affect features...

Delete organization attribute option

Permanently deletes a specified option from an organization's attribute, typically to remove an unnecessary configuration choice.

Delete organization membership

Irreversibly deletes a user's membership from an organization, removing all associated access and permissions; the response confirms deletion without returning details of the de...

Delete org webhook

Permanently deletes an organization's webhook, which stops all its notifications; this action is irreversible and the webhook cannot be recovered.

Delete schedule by id

Permanently deletes a specific schedule using its unique identifier, which must correspond to an existing schedule.

Delete selected calendars

Removes a specified, currently selected calendar from the user's active list within the application, without deleting it from the external provider.

Delete selected slot

Deletes a previously selected time slot from the cal schedule using its `uid`; the slot must exist and this action is irreversible.

Delete team by id

Permanently and irreversibly deletes an existing team and all its associated data from the cal system, using the team's unique `teamid`.

Delete team from organization

Permanently and irreversibly deletes a specific team (and all its associated data, members, and linked projects/events) from an organization, when the team is no longer needed o...

Delete team memberships by id

Irreversibly removes a user's team membership in the cal application, revoking access to that specific team; the user's overall cal account remains active.

Delete user attribute option

Removes a custom attribute option (e.g., skill, role) currently assigned to a user within an organization; this operation is irreversible.

Delete user from organization

Permanently removes a user from a specific organization (user's system-wide account is unaffected), revoking their access rights therein; this action is irreversible via api and...

Delete user schedule

Permanently deletes a specific user's schedule, provided the organization, user, and schedule (identified by `orgid`, `userid`, and `scheduleid`) exist.

Delete webhook by id

Permanently deletes an existing webhook by its `webhookid`, stopping future notifications; this action is irreversible.

Delete webhook for event type

Permanently deletes a specific webhook for an event type, halting its real-time notifications; this operation is irreversible and leaves the event type and other webhooks untouc...

Delete webhooks for event type

Call this to irreversibly delete all webhooks for a specific `eventtypeid` if the event type exists; details of deleted webhooks are not returned.

Disconnect calendar using credential id

Disconnects a calendar integration by its provider name and credential id, irreversibly revoking cal's access; external calendar data remains unaffected.

Fetch all bookings

Fetches a list of bookings, optionally filtered by status, attendee, date range, or by event/team ids (which must belong to/include the authenticated user respectively), with su...

Fetch event type details

Fetches all configuration settings and characteristics for a single event type (identified by orgid, teamid, and eventtypeid), which must exist and be accessible; this read-only...

Fetch organization attribute by id

Retrieves a specific attribute of an organization, useful for fetching a single data point instead of the entire organization record.

Fetch provider access token

Fetches an oauth access token for the specified `clientid` to authenticate api calls; this action only retrieves the token, not managing scheduling or calendar events.

Fetch schedule by id

Fetches comprehensive details for a specific, existing schedule using its `scheduleid`.

Fetch user schedule by org id

Fetches a specific user's schedule, potentially including events and availability, using `orgid`, `userid`, and `scheduleid`.

Fetch webhook by event type id

Retrieves details for a single, specific webhook using its `webhookid` and associated `eventtypeid`.

Force refresh user oauth client

Forces an immediate refresh of oauth tokens for a specified user and client, bypassing the normal expiration cycle, typically when existing tokens are suspected to be invalid or...

Get all timezones

Retrieves all supported time zone identifiers (e.g., 'america/new york', 'europe/london') and their associated metadata, excluding specific dst changes or precise utc offset det...

Get available slots info

Retrieves available time slots for scheduling by considering existing bookings and availability, based on criteria like a specified time range and event type.

Get conference OAuth authorization url

Generates an oauth 2.0 authorization url for a supported conferencing `app` to initiate or refresh its integration with cal.com.

Get default schedule details

Retrieves the cal system's global default schedule configuration, not custom or user-specific ones.

Get event type by team id

Retrieves a specific event type by its id, requiring that the event type is associated with the given team id.

Get google calendar oauth authentication url

Generates the initial google calendar oauth 2.0 authorization url for user redirection to begin the authentication and authorization process.

Get oauth clients user

Retrieves users associated with a specific oauth client (identified by a valid `clientid`) for auditing access or managing permissions.

Get organization ID

Retrieves all organization ids associated with the currently authenticated user.

Get organization schedules

Retrieves a list of schedules (e.g., events, appointments) for an organization, providing basic schedule information, not detailed individual event data.

Get organization teams event types

Retrieves event types, including names, durations, and custom settings for team scheduling, for all teams within an existing organization specified by `orgid`.

Get organization user schedules

Fetches all schedule information for a specific user within an organization; handle potential pagination for extensive schedules.

Get schedule for user in team

Fetches all scheduled events or appointments for a specified user within their team and organization.

Get stripe connect info

Retrieves stripe connect account details (id, charges/payouts status, verification, settings) for the user's linked cal.com account; response may be empty or indicate no integra...

Get team details by organization ID and team ID

Retrieves comprehensive details (e.g., members, roles, metadata) for a specific team using its `teamid` within an organization specified by `orgid`.

Get team information by team ID

Fetches comprehensive details for an existing team using its unique id; returned fields may vary by team configuration and user permissions.

Get teams list

Retrieves all teams the user belongs to, including their names and members.

Get webhook by id

Retrieves details for an existing and accessible webhook by its id; this is a read-only operation.

Handle conferencing oauth callback for app

Processes an oauth 2.0 callback for a conferencing `app`, exchanging the `code` and `state` for access credentials; ensure an oauth flow was previously initiated.

List event types

Retrieves cal event types, filterable by `username` (required if `eventslug` is provided), multiple `usernames`, or organization details (`orgslug` or `orgid`).

List organization memberships

Retrieves all memberships for a given organization, including user details, roles, status, and membership dates.

List team event types by org and team id

Retrieves all event types for a specific team within an organization, optionally filtering by a specific event slug.

Mark booking absent for UID

Marks the host and/or specified attendees as absent for an existing booking, typically used after a scheduled event to record no-shows.

Modify organization membership by id

Updates an organization membership's status (accepted), role, or impersonation settings, identified by `orgid` and `membershipid` in the path; requires at least one of these fie...

Modify org attribute by id

Partially updates an organization attribute using `orgid` and `attributeid`, allowing modification of its name, slug, type, or enabled status; changing the 'type' may affect exi...

Patch organization attribute option

Partially updates a specific option for an organization's attribute, modifying its 'value' and/or 'slug'; at least one of 'value' or 'slug' must be provided.

Patch organization user details

Partially updates details for a user that exists within the specified organization.

Patch team details by ID

Updates specified details for an existing team identified by `teamid`; unspecified fields remain unchanged.

Patch webhook event type

Updates configuration (e.g., payload template, active status, url, triggers, secret) for an existing webhook tied to a specific event type.

Post calendar credentials

Use to submit/update authentication credentials (passed in the request body) for an existing calendar, enabling cal to connect with external calendar services for synchronization.

Connect conferencing app

Connects or reconnects cal.com with a specified conferencing application to enable future virtual meeting scheduling, but does not itself create or schedule meetings.

Post a new booking request

Creates a new booking for an active event type, scheduling it for a specified start time (preferably in the future) with primary attendee details and optional customizations.

Assign or create attribute option for user

Assigns an existing attribute option (using `attributeoptionid`) or creates a new one (using `value`) for a user, linking it to a specified `attributeid` which must already exis...

Add selected calendar

Links a new external calendar or updates an existing link to one, enabling synchronization with the cal application by specifying the `integration` provider, the calendar's `ext...

Post user to organization

Adds a new user to an existing organization (identified by `orgid` in path), requiring user's `email` and allowing extensive optional profile customization.

Post webhook event

Creates a new cal.com webhook subscription to send real-time notifications for specified calendar events to a publicly accessible subscriber url.

Reassign booking to another user

Reassigns an existing, active booking to a specified, authorized user; does not notify participants of this change.

Reassign booking with uid

Reassigns the specified booking to a new team member, who is determined by the system rather than being specified in the request.

Refresh oauth token for client id

Refreshes an oauth access token for a specified `clientid` and managed user using their `refreshtoken`, enabling continued api access when the current token is near or past expiry.

Reschedule booking by uid

Reschedules an existing booking (identified by `bookinguid`) to a new time, provided the new slot's availability is confirmed beforehand; all other rescheduling parameters (e.g....

Reserve slot for event

Temporarily reserves an available time slot for an existing and bookable event type, useful for high-demand slots to prevent double-bookings while the user completes the booking.

Retrieve attribute options for org

Retrieves all available options for a specific attribute within a designated organization, requiring valid and associated `orgid` and `attributeid`.

Retrieve booking details by uid

Fetches comprehensive details for an existing booking, identified by its `bookinguid`.

Retrieve calendar busy times

To find busy calendar slots for scheduling/conflict detection, call this with a valid `credentialid`, an `externalid` accessible by it, and a recognized iana `loggedinuserstz`;...

Showing the first 100Cal has even more actions. Connect it in chat to browse and run the full set.

Chat or automate

Put Cal on autopilot.

Ask once, or set it and forget it. Turn Cal actions into recurring vMira workflows — scheduled runs that run on their own and deliver straight to your chat on any platform.

Every morning

Mira add member to team and sends the result to your chat.

Every week

Mira add organization attribute option and posts a digest to Slack or WhatsApp.

On any schedule

Mira chains several Cal actions into one recurring workflow, delivered wherever you chat.

Try asking

Things to ask Mira about Cal.

Add member to team in Cal

Add organization attribute option in Cal

Delete oauth client webhook in Cal

Cancel booking via uid in Cal

Check calendar availability in Cal

One minute to connect

How to connect Cal to vMira.

01

Open a chat

On the web app or in WhatsApp, Telegram, Instagram or Messenger.

02

Ask for Cal

Tell Mira what you want done — e.g. “Add member to team in Cal.”

03

Approve once

Mira opens a secure, least-privilege link to Cal. Approve it once; revoke anytime in settings.

FAQ

Cal + vMira, in brief.

Can I connect Cal to AI?

Yes. Connect Cal to vMira and run it from any chat in one click. Mira turns your plain-language request into the right Cal action and runs it on your account.

What can Mira do with Cal?

100+ Cal actions — including Add member to team, Add organization attribute option, Delete oauth client webhook. Just ask in plain language once it is connected.

Can I automate Cal or run it on a schedule?

Yes. Beyond one-off asks, build recurring vMira workflows — scheduled runs that chain Cal actions and deliver the result to your chat automatically.

Which apps can I use Cal from?

The web at vmira.ai and inside WhatsApp, Instagram, Telegram, Messenger and LINE — one account, with your history and connected apps following you across every surface.

Is Cal on vMira free?

You can start free. Paid plans (from $4/mo) raise the limits and unlock heavier use, the top models, and more workflow runs. The same account works on the web and every messaging app.

Half the price

Every AI. Up to 200× the usage. From $4 a month.

See plans