Skip to content
Back to skills

Github Actions Integration

ASecurity

Sub-skill of calendly-api: GitHub Actions Integration.

  • 17 stars
  • 0 votes
  • 0 copies
  • 3 views
  • Added September 9, 2026
securitypythongogitapi

Works with

  • api

Security analysis

A96/100
  • mediumInstalls packages at runtime which could introduce malicious dependencies

Pro shows the line behind each finding and how to fix it

Scanned September 9, 2026

npx -y skills add vamseeachanta/workspace-hub --skill github-actions-integration --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Github Actions Integration?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Github Actions Integration
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/vamseeachanta-github-actions-integration/badge)](https://www.skillsdirectory.com/skills/vamseeachanta-github-actions-integration)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: calendly-api-github-actions-integration
description: 'Sub-skill of calendly-api: GitHub Actions Integration.'
version: 1.0.0
category: business
type: reference
scripts_exempt: true
---

# GitHub Actions Integration

## GitHub Actions Integration


```yaml
# .github/workflows/calendly-sync.yml
name: Sync Calendly Events

on:
  schedule:
    - cron: '0 8 * * *'  # Daily at 8 AM
  workflow_dispatch:

jobs:
  sync-events:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - name: Set up Python
        uses: actions/setup-python@v5
        with:
          python-version: '3.12'

      - name: Install dependencies
        run: pip install requests

      - name: Fetch upcoming events
        env:
          CALENDLY_API_KEY: ${{ secrets.CALENDLY_API_KEY }}
        run: |
          python << 'EOF'
          import os
          import requests
          from datetime import datetime, timedelta
          import json

          API_KEY = os.environ["CALENDLY_API_KEY"]
          BASE_URL = "https://api.calendly.com"

          headers = {
              "Authorization": f"Bearer {API_KEY}",
              "Content-Type": "application/json",
          }

          # Get current user
          user_response = requests.get(f"{BASE_URL}/users/me", headers=headers)
          user = user_response.json()["resource"]
          user_uri = user["uri"]

          # Get upcoming events
          now = datetime.utcnow()
          end = now + timedelta(days=7)

          params = {
              "user": user_uri,
              "min_start_time": now.isoformat() + "Z",
              "max_start_time": end.isoformat() + "Z",
              "status": "active",
          }

          events_response = requests.get(
              f"{BASE_URL}/scheduled_events",
              headers=headers,
              params=params,
          )
          events = events_response.json()["collection"]

          print(f"Found {len(events)} upcoming events")

          # Save to file
          with open("upcoming_events.json", "w") as f:
              json.dump(events, f, indent=2)

          # Create summary
          summary = []
          for event in events:
              summary.append({
                  "name": event["name"],
                  "start_time": event["start_time"],
                  "status": event["status"],
              })

          with open("events_summary.json", "w") as f:
              json.dump(summary, f, indent=2)

          print("Events synced successfully")
          EOF

      - name: Upload events artifact
        uses: actions/upload-artifact@v4
        with:
          name: calendly-events
          path: |
            upcoming_events.json
            events_summary.json
```

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.