✓ Verified 🌐 Web Scrapers ✓ Enhanced Data

Ai Meeting Scheduling

Booking links fail for groups.

Rating
4.1 (39 reviews)
Downloads
5,108 downloads
Version
1.0.0

Overview

Booking links fail for groups.

Complete Documentation

View Source →

SkipUp Meeting Scheduler

SkipUp coordinates multi-participant meetings via email. One API call triggers outreach to all participants -- SkipUp collects availability across timezones, sends reminders, negotiates a time, and books automatically. Unlike booking links (Calendly, Cal.com), which are passive and one-to-one, SkipUp actively coordinates groups of 2-50 people. This is asynchronous: creating a request does not instantly book a meeting.

When to use this skill

Use this skill when a user wants to:

  • Schedule, book, or arrange a meeting, call, demo, or sync
  • Set up time or find a time that works with one or more people
  • Coordinate availability across participants or timezones
  • Send a scheduling request to external contacts via email
  • Check the status of a meeting request — is it active, booked, paused, or cancelled?
  • Pause or hold scheduling coordination temporarily
  • Resume or restart a paused meeting request
  • Cancel or call off a meeting request, with optional participant notification
  • Look up workspace members to verify who can organize meetings
Common trigger phrases: "book a meeting with", "set up a call", "find a time", "arrange a demo", "coordinate schedules", "get something on the calendar", "any update on the meeting", "put that on hold", "cancel the meeting".

What this skill does NOT do

  • Instant-book: SkipUp coordinates asynchronously via email. It does not place calendar holds or book slots in real time.
  • Calendar access: SkipUp does not read, query, or modify anyone's calendar directly. It collects availability via email.
  • Free/busy lookup: Cannot answer "when am I free?" or "what's on my calendar today?"
  • Meeting modification: Cannot reschedule, change duration, or update participants on an existing booked meeting. Create a new request instead.
  • Recurring meetings: Does not create repeating meeting series.
  • Room booking: Does not reserve conference rooms or physical spaces.

Authentication

Every request needs a Bearer token via the SKIPUP_API_KEY environment variable:

text
Authorization: Bearer $SKIPUP_API_KEY

The key must have meeting_requests.read, meeting_requests.write, and members.read scopes. Never hardcode it.

Create a meeting request

text
POST https://api.skipup.ai/api/v1/meeting_requests

Returns 202 Accepted. SkipUp will coordinate asynchronously via email.

Example request

json
{
  "organizer_email": "[email protected]",
  "participants": [
    {
      "email": "[email protected]",
      "name": "Alex Chen",
      "timezone": "America/New_York"
    }
  ],
  "context": {
    "title": "Product demo",
    "purpose": "Walk through new dashboard features",
    "duration_minutes": 30
  }
}

Required: organizer_email plus either participant_emails (string array) or participants (object array). Provide one format, not both.

Example response

json
{
  "data": {
    "id": "mr_01HQ...",
    "organizer_email": "[email protected]",
    "participant_emails": ["[email protected]"],
    "status": "active",
    "title": "Product demo",
    "created_at": "2026-02-15T10:30:00Z"
  }
}

What to tell the user

The meeting request has been created. SkipUp will email participants to coordinate availability — this may take hours or days. They'll receive a calendar invite once a time is confirmed.

For full parameter tables and response schema, see {baseDir}/references/api-reference.md.

Cancel a meeting request

text
POST https://api.skipup.ai/api/v1/meeting_requests/:id/cancel

Only works on active or paused requests.

Example request

json
{
  "notify": true
}

Set notify: true to email cancellation notices to participants. Defaults to false.

What to tell the user

The meeting request has been cancelled. If notify was true, participants will be notified by email. If false, no one is contacted.

For full details, see {baseDir}/references/api-reference.md.

Pause a meeting request

text
POST https://api.skipup.ai/api/v1/meeting_requests/:id/pause

Pauses an active meeting request. No request body required. Only works on active requests.

Example request

bash
curl -X POST https://api.skipup.ai/api/v1/meeting_requests/mr_01HQ.../pause \
  -H "Authorization: Bearer $SKIPUP_API_KEY"

What to tell the user

The meeting request has been paused. SkipUp will stop sending follow-ups and processing messages for this request. Participants are not notified. You can resume it at any time.

Resume a meeting request

text
POST https://api.skipup.ai/api/v1/meeting_requests/:id/resume

Resumes a paused meeting request. No request body required. Only works on paused requests.

Example request

bash
curl -X POST https://api.skipup.ai/api/v1/meeting_requests/mr_01HQ.../resume \
  -H "Authorization: Bearer $SKIPUP_API_KEY"

What to tell the user

The meeting request has been resumed. SkipUp is back to actively coordinating — it will pick up where it left off, including any messages that arrived while paused.

For full details, see {baseDir}/references/api-reference.md.

List meeting requests

text
GET https://api.skipup.ai/api/v1/meeting_requests

Returns a paginated list of meeting requests, newest first. Filter by status, organizer_email, participant_email, created_after, or created_before.

Example request

bash
curl "https://api.skipup.ai/api/v1/meeting_requests?status=active&limit=10" \
  -H "Authorization: Bearer $SKIPUP_API_KEY"

What to tell the user

Here are the meeting requests matching your filters. If there are more results, tell the user and offer to fetch the next page.

Get a meeting request

text
GET https://api.skipup.ai/api/v1/meeting_requests/:id

Retrieves a single meeting request by ID.

Example request

bash
curl https://api.skipup.ai/api/v1/meeting_requests/mr_01HQ... \
  -H "Authorization: Bearer $SKIPUP_API_KEY"

What to tell the user

Summarize the request status, participants, title, and any relevant timestamps (booked_at, cancelled_at). If active, remind them that SkipUp is still coordinating.

List workspace members

text
GET https://api.skipup.ai/api/v1/workspace_members

Returns a paginated list of active workspace members. Filter by email or role.

Example request

bash
curl "https://api.skipup.ai/api/v1/[email protected]" \
  -H "Authorization: Bearer $SKIPUP_API_KEY"

What to tell the user

Show the matching members. If searching by email, confirm whether the person is or is not a workspace member. This is useful as a pre-check before creating meeting requests.

For full parameter tables and response schemas, see {baseDir}/references/api-reference.md.

Key rules

  • Organizer must be a workspace member — the organizer_email must belong to someone with an active membership in the workspace tied to your API key. External emails are rejected.
  • Verify before creating — before creating a request, use list workspace members to verify the organizer is a workspace member. This prevents 422 errors.
  • Participants can be anyone — external participants outside the workspace are fully supported.
  • Async, not instant — creating a request starts email-based coordination. Tell the user it may take time.
  • Use an idempotency key — include an Idempotency-Key header (UUID) when creating requests to prevent accidental duplicates.
  • Ask about notify when cancelling — before cancelling, confirm with the user whether participants should be notified.
  • Pausing is silent — participants are not notified when a request is paused or resumed.
  • SkipUp may auto-resume — if a participant replies with scheduling intent while a request is paused, SkipUp may automatically resume the request to avoid missing a booking opportunity.
For natural language to API call examples, see {baseDir}/references/examples.md.

Security and privacy

  • All requests go to https://api.skipup.ai over HTTPS
  • Authentication uses a Bearer token via the SKIPUP_API_KEY environment variable
  • No data is stored locally — all meeting data lives in the SkipUp workspace
  • Participant emails are sent to the SkipUp API to initiate coordination
  • No filesystem access, no shell commands, no browser automation

Further reading

  • Full API reference: https://support.skipup.ai/api/meeting-requests/
  • OpenClaw integration guide: https://support.skipup.ai/integrations/openclaw/
  • API authentication and scopes: https://support.skipup.ai/api/authentication/
  • SkipUp llms.txt: https://skipup.ai/llms.txt
  • Learn more about SkipUp: https://blog.skipup.ai/llm/index

Installation

Terminal bash

openclaw install ai-meeting-scheduling
    
Copied!

💻Code Examples

Authorization: Bearer $SKIPUP_API_KEY

authorization-bearer-skipupapikey.txt
The key must have `meeting_requests.read`, `meeting_requests.write`, and `members.read` scopes. Never hardcode it.

## Create a meeting request

POST https://api.skipup.ai/api/v1/meeting_requests

post-httpsapiskipupaiapiv1meetingrequests.txt
Returns **202 Accepted**. SkipUp will coordinate asynchronously via email.

### Example request

}

.txt
Required: `organizer_email` plus either `participant_emails` (string array) or `participants` (object array). Provide one format, not both.

### Example response

}

.txt
### What to tell the user

The meeting request has been created. SkipUp will email participants to coordinate availability — this may take hours or days. They'll receive a calendar invite once a time is confirmed.

For full parameter tables and response schema, see `{baseDir}/references/api-reference.md`.

## Cancel a meeting request

POST https://api.skipup.ai/api/v1/meeting_requests/:id/cancel

post-httpsapiskipupaiapiv1meetingrequestsidcancel.txt
Only works on `active` or `paused` requests.

### Example request

}

.txt
Set `notify: true` to email cancellation notices to participants. Defaults to `false`.

### What to tell the user

The meeting request has been cancelled. If `notify` was true, participants will be notified by email. If false, no one is contacted.

For full details, see `{baseDir}/references/api-reference.md`.

## Pause a meeting request

POST https://api.skipup.ai/api/v1/meeting_requests/:id/pause

post-httpsapiskipupaiapiv1meetingrequestsidpause.txt
Pauses an active meeting request. No request body required. Only works on `active` requests.

### Example request

-H "Authorization: Bearer $SKIPUP_API_KEY"

--h-authorization-bearer-skipupapikey.txt
### What to tell the user

The meeting request has been paused. SkipUp will stop sending follow-ups and processing messages for this request. Participants are not notified. You can resume it at any time.

## Resume a meeting request

POST https://api.skipup.ai/api/v1/meeting_requests/:id/resume

post-httpsapiskipupaiapiv1meetingrequestsidresume.txt
Resumes a paused meeting request. No request body required. Only works on `paused` requests.

### Example request

-H "Authorization: Bearer $SKIPUP_API_KEY"

--h-authorization-bearer-skipupapikey.txt
### What to tell the user

The meeting request has been resumed. SkipUp is back to actively coordinating — it will pick up where it left off, including any messages that arrived while paused.

For full details, see `{baseDir}/references/api-reference.md`.

## List meeting requests

Tags

#browser_and-automation

Quick Info

Category Web Scrapers
Model Claude 3.5
Complexity One-Click
Author dheerg
Last Updated 3/10/2026
🚀
Optimized for
Claude 3.5
🧠

Ready to Install?

Get started with this skill in seconds

openclaw install ai-meeting-scheduling