Observe WhatsApp
When to use
Use this skill for operational diagnostics: message delivery investigation, webhook delivery debugging, error triage, and WhatsApp health checks.
Setup
Preferred path:
- Kapso CLI installed and authenticated (
kapso login)
- Start with
kapso status to confirm project access and available WhatsApp numbers
Fallback path:
Env vars:
KAPSO_API_BASE_URL (host only, no /platform/v1)
KAPSO_API_KEY
How to
Investigate message delivery
Preferred path:
- Resolve the number:
kapso whatsapp numbers resolve --phone-number "<display-number>" --output json
- List recent messages:
kapso whatsapp messages list --phone-number "<display-number>" --limit 50 --output json
- Inspect a specific message:
kapso whatsapp messages get <message-id> --phone-number-id <id> --output json
- Inspect the conversation:
kapso whatsapp conversations list --phone-number "<display-number>" --output json
Fallback path:
- List messages:
node scripts/messages.js --phone-number-id <id>
- Inspect message:
node scripts/message-details.js --message-id <id>
- Find conversation:
node scripts/lookup-conversation.js --phone-number <e164>
Triage errors
Preferred path:
- Confirm project and number state:
kapso status
- Run number health:
kapso whatsapp numbers health --phone-number "<display-number>" --output human
- Inspect related templates when relevant:
kapso whatsapp templates list --phone-number "<display-number>" --output json
Fallback path:
- Message errors:
node scripts/errors.js
- API logs:
node scripts/api-logs.js
- Webhook deliveries:
node scripts/webhook-deliveries.js
Run health checks
Preferred path:
- Project overview:
kapso status
- Phone number health:
kapso whatsapp numbers health --phone-number "<display-number>" --output human
Fallback path:
- Project overview:
node scripts/overview.js
- Phone number health:
node scripts/whatsapp-health.js --phone-number-id <id>
Scripts
Messages
| Script |
Purpose |
messages.js |
List messages |
message-details.js |
Get message details |
lookup-conversation.js |
Find conversation by phone or ID |
Errors and logs
| Script |
Purpose |
errors.js |
List message errors |
api-logs.js |
List external API logs |
webhook-deliveries.js |
List webhook delivery attempts |
Health
| Script |
Purpose |
overview.js |
Project overview |
whatsapp-health.js |
Phone number health check |
OpenAPI
| Script |
Purpose |
openapi-explore.mjs |
Explore OpenAPI (search/op/schema/where) |
Install deps (once):
npm i
Examples:
node scripts/openapi-explore.mjs --spec platform search "webhook deliveries"
node scripts/openapi-explore.mjs --spec platform op listWebhookDeliveries
node scripts/openapi-explore.mjs --spec platform schema WebhookDelivery
Notes
- For webhook setup (create/update/delete, signature verification, event types), use
integrate-whatsapp.
- Prefer resolving a display phone number to the canonical
phone_number_id before deep debugging.
- Keep the scripts as the fallback path when the CLI is unavailable or when you need API-log or webhook-delivery inspection.
References
- references/message-debugging-reference.md - Message debugging guide
- references/triage-reference.md - Error triage guide
- references/health-reference.md - Health check guide
Related skills
integrate-whatsapp - Onboarding, webhooks, messaging, templates, flows
automate-whatsapp - Workflows, agents, and automations
[observe-whatsapp file map]|root: .
|.:{package.json,SKILL.md}
|assets:{health-example.json,message-debugging-example.json,triage-example.json}
|references:{health-reference.md,message-debugging-reference.md,triage-reference.md}
|scripts:{api-logs.js,errors.js,lookup-conversation.js,message-details.js,messages.js,openapi-explore.mjs,overview.js,webhook-deliveries.js,whatsapp-health.js}
|scripts/lib/messages:{args.js,kapso-api.js}
|scripts/lib/status:{args.js,kapso-api.js}
|scripts/lib/triage:{args.js,kapso-api.js}
1---2name: observe-whatsapp3description: Observe and troubleshoot WhatsApp in Kapso: debug message delivery, inspect webhook deliveries/retries, triage API errors, and run health checks. Use when investigating production issues, message failures, or webhook delivery problems.4---56# Observe WhatsApp78## When to use910Use this skill for operational diagnostics: message delivery investigation, webhook delivery debugging, error triage, and WhatsApp health checks.1112## Setup1314Preferred path:15- Kapso CLI installed and authenticated (`kapso login`)16- Start with `kapso status` to confirm project access and available WhatsApp numbers1718Fallback path:19Env vars:20- `KAPSO_API_BASE_URL` (host only, no `/platform/v1`)21- `KAPSO_API_KEY`2223## How to2425### Investigate message delivery2627Preferred path:281. Resolve the number: `kapso whatsapp numbers resolve --phone-number "<display-number>" --output json`292. List recent messages: `kapso whatsapp messages list --phone-number "<display-number>" --limit 50 --output json`303. Inspect a specific message: `kapso whatsapp messages get <message-id> --phone-number-id <id> --output json`314. Inspect the conversation: `kapso whatsapp conversations list --phone-number "<display-number>" --output json`3233Fallback path:341. List messages: `node scripts/messages.js --phone-number-id <id>`352. Inspect message: `node scripts/message-details.js --message-id <id>`363. Find conversation: `node scripts/lookup-conversation.js --phone-number <e164>`3738### Triage errors3940Preferred path:411. Confirm project and number state: `kapso status`422. Run number health: `kapso whatsapp numbers health --phone-number "<display-number>" --output human`433. Inspect related templates when relevant: `kapso whatsapp templates list --phone-number "<display-number>" --output json`4445Fallback path:461. Message errors: `node scripts/errors.js`472. API logs: `node scripts/api-logs.js`483. Webhook deliveries: `node scripts/webhook-deliveries.js`4950### Run health checks5152Preferred path:531. Project overview: `kapso status`542. Phone number health: `kapso whatsapp numbers health --phone-number "<display-number>" --output human`5556Fallback path:571. Project overview: `node scripts/overview.js`582. Phone number health: `node scripts/whatsapp-health.js --phone-number-id <id>`5960## Scripts6162### Messages6364| Script | Purpose |65|--------|---------|66| `messages.js` | List messages |67| `message-details.js` | Get message details |68| `lookup-conversation.js` | Find conversation by phone or ID |6970### Errors and logs7172| Script | Purpose |73|--------|---------|74| `errors.js` | List message errors |75| `api-logs.js` | List external API logs |76| `webhook-deliveries.js` | List webhook delivery attempts |7778### Health7980| Script | Purpose |81|--------|---------|82| `overview.js` | Project overview |83| `whatsapp-health.js` | Phone number health check |8485### OpenAPI8687| Script | Purpose |88|--------|---------|89| `openapi-explore.mjs` | Explore OpenAPI (search/op/schema/where) |9091Install deps (once):92```bash93npm i94```9596Examples:97```bash98node scripts/openapi-explore.mjs --spec platform search "webhook deliveries"99node scripts/openapi-explore.mjs --spec platform op listWebhookDeliveries100node scripts/openapi-explore.mjs --spec platform schema WebhookDelivery101```102103## Notes104105- For webhook setup (create/update/delete, signature verification, event types), use `integrate-whatsapp`.106- Prefer resolving a display phone number to the canonical `phone_number_id` before deep debugging.107- Keep the scripts as the fallback path when the CLI is unavailable or when you need API-log or webhook-delivery inspection.108109## References110111- [references/message-debugging-reference.md](references/message-debugging-reference.md) - Message debugging guide112- [references/triage-reference.md](references/triage-reference.md) - Error triage guide113- [references/health-reference.md](references/health-reference.md) - Health check guide114115## Related skills116117- `integrate-whatsapp` - Onboarding, webhooks, messaging, templates, flows118- `automate-whatsapp` - Workflows, agents, and automations119120<!-- FILEMAP:BEGIN -->121```text122[observe-whatsapp file map]|root: .123|.:{package.json,SKILL.md}124|assets:{health-example.json,message-debugging-example.json,triage-example.json}125|references:{health-reference.md,message-debugging-reference.md,triage-reference.md}126|scripts:{api-logs.js,errors.js,lookup-conversation.js,message-details.js,messages.js,openapi-explore.mjs,overview.js,webhook-deliveries.js,whatsapp-health.js}127|scripts/lib/messages:{args.js,kapso-api.js}128|scripts/lib/status:{args.js,kapso-api.js}129|scripts/lib/triage:{args.js,kapso-api.js}130```131<!-- FILEMAP:END -->