Skip to content
Back to skills

Intercom Incident Runbook

ASecurity

Execute Intercom incident response procedures with triage, mitigation, and postmortem. Use when responding to Intercom API outages, investigating integration errors, or running post-incident reviews for Intercom failures. Trigger with phrases like "intercom incident", "intercom outage", "intercom down", "intercom on-call", "intercom emergency", "intercom broken".

  • 2,719 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 21, 2026
ai-agentstypescriptshellbashawsapi

Works with

  • claude code
  • api

Security analysis

A96/100
  • mediumUses curl or wget to download content

Pro scans all 4 files and shows the line behind each finding

Scanned September 21, 2026

npx -y skills add jeremylongshore/claude-code-plugins-plus --skill intercom-incident-runbook --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Intercom Incident Runbook?

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

Security grade badge for Intercom Incident Runbook
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/jeremylongshore-intercom-incident-runbook-eafafb73/badge)](https://www.skillsdirectory.com/skills/jeremylongshore-intercom-incident-runbook-eafafb73)

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: intercom-incident-runbook
description: |
  Execute Intercom incident response procedures with triage, mitigation, and postmortem.

  Use when responding to Intercom API outages, investigating integration errors,
  or running post-incident reviews for Intercom failures.

  Trigger with phrases like "intercom incident", "intercom outage",
  "intercom down", "intercom on-call", "intercom emergency", "intercom broken".
allowed-tools: Bash(curl:*), Bash(kubectl:*)
version: 1.6.0
license: MIT
author: Jeremy Longshore <jeremy@intentsolutions.io>
tags:
- saas
- support
- messaging
- intercom
compatibility: Designed for Claude Code
---
# Intercom Incident Runbook

## Overview

Rapid incident response procedures for Intercom integration failures. The runbook
takes you from alert to resolution in four phases — triage, decision, mitigation,
and postmortem — with HTTP-status-code-driven branching so you always know whether
the fault is yours or Intercom's. High-level workflow lives here; the full
copy-paste scripts and templates live in `references/`.

## Prerequisites

- `INTERCOM_ACCESS_TOKEN` exported in your shell (a workspace admin token).
- `curl` and `jq` installed for API + status-page probing.
- `kubectl` access to the deployment running your Intercom integration (for restarts).
- Access to your secret manager (e.g. AWS Secrets Manager) to rotate a compromised token.
- Developer Hub access for the Intercom app, or a path to escalate to a workspace admin.

## Severity Levels

| Level | Definition | Response Time | Example |
|-------|------------|---------------|---------|
| P1 | All Intercom API calls failing | < 15 min | 401 auth failures, API unreachable |
| P2 | Degraded service | < 1 hour | High latency, rate limited (429) |
| P3 | Partial impact | < 4 hours | Webhook delays, search timeouts |
| P4 | No user impact | Next business day | Monitoring gaps, stale cache |

## Instructions

Work the phases in order. Each phase links to the full reference when you need depth.

1. **Assign severity.** Match the symptom to the table above; this sets your clock
   and who you page.

2. **Triage — is it you or Intercom?** Run the first probe to confirm reachability:

   ```bash
   curl -s -o /dev/null -w "%{http_code}" \
     -H "Authorization: Bearer $INTERCOM_ACCESS_TOKEN" \
     https://api.intercom.io/me
   ```

   Then check `status.intercom.com` for a platform incident and read the rate-limit
   headers. The full 5-step diagnostic script and the branch-by-branch decision tree
   are in [references/triage.md](references/triage.md).

3. **Decide.** If Intercom reports an incident, it is their problem — enable graceful
   degradation and monitor. If not, it is your integration; branch on the status code:
   401 → rotate token, 403 → add OAuth scope, 429 → queue/backoff, 5xx → retry with backoff.

4. **Mitigate by error type.** Apply the matching remediation — token rotation for 401,
   volume reduction for 429, cached-data fallback for 5xx. Full commands (including the
   `aws secretsmanager` rotation and the `kubectl rollout restart`) plus the TypeScript
   graceful-degradation pattern are in [references/mitigation.md](references/mitigation.md).

5. **Communicate.** Post the internal Slack status update on a fixed cadence using the
   template in [references/templates.md](references/templates.md).

6. **Write the postmortem.** After resolution, fill in the postmortem template
   (timeline, root cause, impact counts, action items) from
   [references/templates.md](references/templates.md). Always record Intercom
   `request_id`s captured during the incident — Intercom support needs them.

## Output

Working through the runbook produces:

- A **severity classification** (P1–P4) with a bounded response clock.
- A **fault verdict** — Intercom-side platform incident vs. your integration — backed by
  the triage script's HTTP codes, status-page state, and rate-limit headers.
- A **mitigation applied** for the specific error class (rotated token, paused sync jobs,
  enabled cache fallback, or retry/backoff).
- A **communication trail** — timestamped Slack updates on cadence.
- A **completed postmortem** with timeline, root cause, impact counts, captured Intercom
  `request_id`s, and owned action items.

## Examples

**Fast triage during a suspected outage** — confirm reachability, then check the platform:

```bash
curl -s -o /dev/null -w "API=%{http_code}\n" \
  -H "Authorization: Bearer $INTERCOM_ACCESS_TOKEN" https://api.intercom.io/me
curl -s https://status.intercom.com/api/v2/status.json | jq -r '.status.description'
```

A `401` with a green status page means your token, not Intercom — jump to the 401
mitigation. The full 5-step diagnostic, the decision tree, per-status mitigation
commands, and the Slack/postmortem templates are all in `references/`:

- [references/triage.md](references/triage.md) — full triage script + decision tree
- [references/mitigation.md](references/mitigation.md) — 401 / 429 / 5xx remediation + graceful degradation
- [references/templates.md](references/templates.md) — Slack update + postmortem templates

## Error Handling

| Issue | Cause | Solution |
|-------|-------|----------|
| Triage script fails | Token not set | Export INTERCOM_ACCESS_TOKEN |
| Status page unreachable | DNS/network | Try mobile network or VPN |
| Can't rotate token | No Developer Hub access | Escalate to workspace admin |
| Cache empty during outage | No pre-warming | Implement cache warming job |

## Resources

- [Intercom Status Page](https://status.intercom.com)
- [Intercom Status API](https://status.intercom.com/api)
- [Error Codes](https://developers.intercom.com/docs/references/rest-api/errors/error-codes)
- [Rate Limiting](https://developers.intercom.com/docs/references/rest-api/errors/rate-limiting)

For data handling compliance, see `intercom-data-handling`.

Files in this skill

  • SKILL.md5.8 KB
  • references/mitigation.md2.4 KB
  • references/templates.md1.3 KB
  • references/triage.md2.1 KB

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.