Try free
6 min read Guide 96 of 877

Connecting Integrations

Modern development teams use many tools—GitHub, Slack, calendar apps, CI/CD systems, and more. GitScrum integrations connect these tools so information flows automatically, reducing context switching and keeping everything in sync.

Integration Categories

CategoryIntegrationsPurpose
Source ControlGitHub, GitLab, BitbucketCode ↔ Tasks
CommunicationSlack, Teams, EmailNotifications
CalendarGoogle, OutlookDue dates, meetings
AutomationZapier, WebhooksCustom workflows
CI/CDGitHub Actions, JenkinsBuild status

Core Integrations

GitHub Integration

GITHUB INTEGRATION
══════════════════

FEATURES:
├── Link commits to tasks
├── Auto-update on PR merge
├── Branch creation from tasks
├── Build status visibility
└── PR review tracking

SETUP:
1. Settings → Integrations → GitHub
2. Click "Connect GitHub"
3. Authorize GitScrum App
4. Select repositories
5. Map to projects

CONFIGURATION:
├── Task ID pattern: GS-[0-9]+
├── Auto-transition on merge: ✓
├── Show commits on task: ✓
├── Create branches: ✓
└── Sync PR comments: Optional

Slack Integration

SLACK INTEGRATION
═════════════════

FEATURES:
├── Task notifications to channels
├── Create tasks from Slack
├── Daily/weekly digests
├── Mention alerts
└── Slash commands

SETUP:
1. Settings → Integrations → Slack
2. Click "Add to Slack"
3. Authorize permissions
4. Select workspace
5. Configure channels

CHANNEL MAPPING:
┌─────────────────────────────────────────────────┐
│  Project/Event        │  Slack Channel         │
├─────────────────────────────────────────────────┤
│  Website Project      │  #website-dev          │
│  Critical Bugs        │  #alerts               │
│  Sprint Updates       │  #team-standups        │
│  All Comments         │  (Disabled)            │
└─────────────────────────────────────────────────┘

SLASH COMMANDS:
├── /gs create [task name] - Create task
├── /gs search [query] - Find tasks
├── /gs my - My open tasks
└── /gs sprint - Sprint summary

Calendar Integration

CALENDAR INTEGRATION
════════════════════

FEATURES:
├── Due dates as calendar events
├── Sprint dates sync
├── Meeting tasks sync
├── Availability view
└── Reminder events

GOOGLE CALENDAR SETUP:
1. Settings → Integrations → Google Calendar
2. Connect Google account
3. Select calendars
4. Configure sync options

SYNC OPTIONS:
├── Due dates → Calendar events: ✓
├── Sprints → Calendar blocks: ✓
├── Only assigned tasks: ✓
├── Include subtasks: ✗
└── Reminder before due: 1 day

CALENDAR VIEW:
┌─────────────────────────────────────────────────┐
│  March 2024                                     │
├─────────────────────────────────────────────────┤
│  Mon 18 │ GS-123: API Review due               │
│  Wed 20 │ Sprint 15 ends                       │
│  Thu 21 │ Sprint 16 begins                     │
│  Fri 22 │ GS-456: Deploy v2.1                  │
└─────────────────────────────────────────────────┘

Automation Integrations

Zapier Integration

ZAPIER INTEGRATION
══════════════════

TRIGGERS (GitScrum → Other):
├── Task created
├── Task status changed
├── Task assigned
├── Comment added
├── Sprint started/ended
└── Due date approaching

ACTIONS (Other → GitScrum):
├── Create task
├── Update task
├── Add comment
├── Assign task
├── Add label
└── Create project

EXAMPLE ZAPS:
─────────────────────────────────────
ZAP 1: Customer Support → Dev
Trigger: New Zendesk ticket (bug)
Action: Create GitScrum task
Map: Priority, description, link

ZAP 2: Task → CRM
Trigger: Task completed (label:client)
Action: Update HubSpot deal stage

ZAP 3: Form → Task
Trigger: Typeform submission
Action: Create GitScrum task
Include: Form responses
─────────────────────────────────────

Webhooks

WEBHOOK CONFIGURATION
═════════════════════

OUTGOING WEBHOOKS (GitScrum → Your Server):

Event: Task status changed
URL: https://your-server.com/webhook
Method: POST
Headers:
├── Content-Type: application/json
├── X-GitScrum-Signature: [hmac]
└── Authorization: Bearer [token]

Payload:
{
  "event": "task.status_changed",
  "task": {
    "id": "GS-123",
    "title": "Task name",
    "status": "done",
    "previous_status": "in_review"
  },
  "actor": {
    "id": "user_456",
    "name": "John Doe"
  },
  "timestamp": "2024-03-15T10:30:00Z"
}

INCOMING WEBHOOKS (External → GitScrum):
URL: https://api.gitscrum.com/webhook/abc123
Use: Create tasks, update status via API

API Access

API INTEGRATION
═══════════════

AUTHENTICATION:
├── Personal Access Tokens
├── OAuth 2.0 for apps
└── API Keys for services

ENDPOINTS:
├── GET /api/v1/tasks
├── POST /api/v1/tasks
├── PUT /api/v1/tasks/{id}
├── GET /api/v1/projects
├── GET /api/v1/sprints
└── POST /api/v1/comments

RATE LIMITS:
├── 100 requests/minute (standard)
├── 1000 requests/minute (enterprise)
└── Burst: 10 requests/second

EXAMPLE:
curl -X POST https://api.gitscrum.com/v1/tasks \
  -H "Authorization: Bearer TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"title": "New task", "project_id": "proj_123"}'

Integration Management

Dashboard

INTEGRATION DASHBOARD
═════════════════════

┌─────────────────────────────────────────────────────────┐
│  Connected Integrations                                 │
├─────────────────────────────────────────────────────────┤
│                                                         │
│  GitHub              ✓ Connected                       │
│  ├── 5 repositories                                    │
│  ├── Last sync: 2 min ago                             │
│  └── [Configure] [Disconnect]                          │
│                                                         │
│  Slack               ✓ Connected                       │
│  ├── 3 channels configured                            │
│  ├── 247 notifications today                          │
│  └── [Configure] [Disconnect]                          │
│                                                         │
│  Google Calendar     ✓ Connected                       │
│  ├── 2 calendars synced                               │
│  ├── 12 events synced                                 │
│  └── [Configure] [Disconnect]                          │
│                                                         │
│  Zapier              ✓ Connected                       │
│  ├── 4 active zaps                                    │
│  └── [View in Zapier]                                  │
│                                                         │
├─────────────────────────────────────────────────────────┤
│  [+ Add Integration]                                    │
└─────────────────────────────────────────────────────────┘

Troubleshooting

INTEGRATION HEALTH
══════════════════

COMMON ISSUES:
├── Token expired → Reauthorize
├── Rate limited → Check usage
├── Webhook failed → Check endpoint
├── Sync delayed → Check status
└── Missing data → Verify mapping

LOGS:
┌─────────────────────────────────────────────────────────┐
│  Integration Logs (last 24h)                            │
├─────────────────────────────────────────────────────────┤
│  10:30 ✓ GitHub: PR #234 synced to GS-123             │
│  10:28 ✓ Slack: Notification sent to #dev             │
│  10:25 ✗ Webhook: Connection timeout (retrying)       │
│  10:20 ✓ Calendar: 3 events synced                    │
└─────────────────────────────────────────────────────────┘

Best Practices

For Integrations

  1. Start essential — GitHub + Slack first
  2. Map thoughtfully — Right channels for right events
  3. Don't over-notify — Filter to important events
  4. Monitor health — Check integration status
  5. Secure tokens — Rotate regularly

Anti-Patterns

INTEGRATION MISTAKES:
✗ Too many notifications
✗ Not testing webhook endpoints
✗ Ignoring failed syncs
✗ Exposing API tokens
✗ Complex Zapier chains
✗ No integration documentation