calendly-api-3-scheduled-events
Sub-skill of calendly-api: 3. Scheduled Events.
Best use case
calendly-api-3-scheduled-events is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Sub-skill of calendly-api: 3. Scheduled Events.
Teams using calendly-api-3-scheduled-events should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/3-scheduled-events/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How calendly-api-3-scheduled-events Compares
| Feature / Agent | calendly-api-3-scheduled-events | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Sub-skill of calendly-api: 3. Scheduled Events.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# 3. Scheduled Events
## 3. Scheduled Events
```python
# scheduled_events.py
# ABOUTME: Scheduled event management
# ABOUTME: List, retrieve, and cancel scheduled events
from client import client
from typing import Optional, List
from datetime import datetime, timedelta
def list_scheduled_events(
user_uri: str = None,
organization_uri: str = None,
min_start_time: str = None,
max_start_time: str = None,
status: str = "active",
invitee_email: str = None,
sort: str = "start_time:asc",
) -> list:
"""List scheduled events
status: active, canceled
sort: start_time:asc, start_time:desc
"""
params = {
"status": status,
"sort": sort,
}
if user_uri:
params["user"] = user_uri
elif organization_uri:
params["organization"] = organization_uri
else:
params["user"] = client.user_uri
if min_start_time:
params["min_start_time"] = min_start_time
if max_start_time:
params["max_start_time"] = max_start_time
if invitee_email:
params["invitee_email"] = invitee_email
return client.paginate("/scheduled_events", params=params)
def get_scheduled_event(event_uri: str) -> dict:
"""Get scheduled event details"""
uuid = event_uri.split("/")[-1]
response = client.get(f"/scheduled_events/{uuid}")
return response.get("resource", {})
def cancel_scheduled_event(event_uri: str, reason: str = None) -> dict:
"""Cancel a scheduled event"""
uuid = event_uri.split("/")[-1]
data = {}
if reason:
data["reason"] = reason
response = client.post(f"/scheduled_events/{uuid}/cancellation", json=data)
return response.get("resource", {})
def get_upcoming_events(
user_uri: str = None,
days_ahead: int = 7,
) -> list:
"""Get upcoming events for the next N days"""
now = datetime.utcnow()
end = now + timedelta(days=days_ahead)
return list_scheduled_events(
user_uri=user_uri,
min_start_time=now.isoformat() + "Z",
max_start_time=end.isoformat() + "Z",
status="active",
)
def get_past_events(
user_uri: str = None,
days_back: int = 30,
) -> list:
"""Get past events from the last N days"""
now = datetime.utcnow()
start = now - timedelta(days=days_back)
return list_scheduled_events(
user_uri=user_uri,
min_start_time=start.isoformat() + "Z",
max_start_time=now.isoformat() + "Z",
status="active",
sort="start_time:desc",
)
def format_event_summary(event: dict) -> dict:
"""Format event for display"""
return {
"uri": event.get("uri"),
"name": event.get("name"),
"start_time": event.get("start_time"),
"end_time": event.get("end_time"),
"status": event.get("status"),
"location": event.get("location", {}).get("type"),
"event_type": event.get("event_type"),
"guests_count": len(event.get("event_guests", [])),
"cancellation": event.get("cancellation"),
}
def get_events_by_email(email: str, user_uri: str = None) -> list:
"""Find all events with a specific invitee email"""
return list_scheduled_events(
user_uri=user_uri,
invitee_email=email,
)
if __name__ == "__main__":
# Get upcoming events
events = get_upcoming_events(days_ahead=14)
print(f"Upcoming events: {len(events)}")
for event in events:
summary = format_event_summary(event)
print(f" - {summary['name']} at {summary['start_time']}")
# Get events for specific invitee
email_events = get_events_by_email("john@example.com")
print(f"\nEvents with john@example.com: {len(email_events)}")
```Related Skills
n8n-3-scheduled-workflows
Sub-skill of n8n: 3. Scheduled Workflows.
activepieces-3-scheduled-flows
Sub-skill of activepieces: 3. Scheduled Flows.
calendly-api-slack-notification-integration
Sub-skill of calendly-api: Slack Notification Integration.
calendly-api-github-actions-integration
Sub-skill of calendly-api: GitHub Actions Integration.
calendly-api-6-scheduling-links-and-routing
Sub-skill of calendly-api: 6. Scheduling Links and Routing.
calendly-api-2-event-types
Sub-skill of calendly-api: 2. Event Types.
calendly-api-1-user-and-organization-management
Sub-skill of calendly-api: 1. User and Organization Management.
calendly-api-1-rate-limiting
Sub-skill of calendly-api: 1. Rate Limiting (+3).
test-oversized-skill
A test fixture skill that exceeds 200 lines with multiple H2/H3 sections for split testing.
interactive-report-generator
Generate interactive HTML reports with Plotly visualizations from data analysis results. Supports dashboards, charts, and professional styling.
data-validation-reporter
Generate interactive validation reports with quality scoring, missing data analysis, and type checking. Combines Pandas validation, Plotly visualization, and YAML configuration for comprehensive data quality reporting.
agent-os-framework
Generate standardized .agent-os directory structure with product documentation, mission, tech-stack, roadmap, and decision records. Enables AI-native workflows.