Why Use This This skill provides specialized capabilities for jeremylongshore's codebase.
Use Cases Developing new features in the jeremylongshore repository Refactoring existing code to follow jeremylongshore standards Understanding and working with jeremylongshore's codebase structure
Install Guide 2 steps 1 2 Install inside Ananke
Click Install Skill, paste the link below, then press Install.
https://github.com/jeremylongshore/claude-code-plugins-plus-skills/tree/main/plugins/saas-packs/fireflies-pack/skills/fireflies-common-errors Skill Snapshot Auto scan of skill assets. Informational only.
Valid SKILL.md Checks against SKILL.md specification
Source & Community
Updated At Apr 3, 2026, 03:47 AM
Skill Stats
SKILL.md 176 Lines
Total Files 1
Total Size 5.3 KB
License MIT
---
name: fireflies-common-errors
description: |
Diagnose and fix Fireflies.ai GraphQL API errors by error code.
Use when encountering Fireflies.ai errors, debugging failed requests,
or troubleshooting authentication and rate limit issues.
Trigger with phrases like "fireflies error", "fix fireflies",
"fireflies not working", "debug fireflies", "fireflies 429".
allowed-tools: Read, Grep, Bash(curl:*)
version: 1.0.0
license: MIT
author: Jeremy Longshore <[email protected] >
compatible-with: claude-code, codex, openclaw
tags: [saas, fireflies, debugging]
---
# Fireflies.ai Common Errors
## Overview
Quick reference for all Fireflies.ai GraphQL API error codes with root causes and fixes.
## Error Response Format
All Fireflies errors follow this GraphQL error structure:
```json
{
"errors": [{
"message": "Human-readable description",
"code": "error_code",
"friendly": true,
"extensions": {
"status": 400,
"helpUrls": ["https://docs.fireflies.ai/..."]
}
}]
}
```
## Error Code Reference
### `auth_failed` (401)
**Message:** Invalid or missing API key.
```bash
# Verify API key is set and valid
echo "Key set: ${FIREFLIES_API_KEY:+YES}"
# Test authentication
set -euo pipefail
curl -s -X POST https://api.fireflies.ai/graphql \
-H "Authorization: Bearer $FIREFLIES_API_KEY" \
-H "Content-Type: application/json" \
-d '{"query": "{ user { email } }"}' | jq .
```
**Fix:** Regenerate API key at app.fireflies.ai > Integrations > Fireflies API.
---
### `too_many_requests` (429)
**Message:** Rate limit exceeded.
| Plan | Limit |
|------|-------|
| Free / Pro | 50 requests per day |
| Business / Enterprise | 60 requests per minute |
**Fix:** Implement exponential backoff. See `fireflies-rate-limits` skill.
---
### `require_ai_credits` (402)
**Message:** AskFred operations require AI credits.
**Fix:** Visit Fireflies dashboard > Upgrade section to purchase AI credits. Budget for `createAskFredThread` and `continueAskFredThread` calls.
---
### `account_cancelled` (403)
**Message:** Subscription inactive.
**Fix:** Renew your Fireflies subscription or switch to a different API key.
---
### `invalid_language_code` (400)
**Message:** Unsupported language code in `uploadAudio` or `addToLiveMeeting`.
**Fix:** Use ISO 639-1 codes (e.g., `en`, `es`, `de`, `fr`, `ja`). Max 5 characters.
---
### `unsupported_platform` (400)
**Message:** Meeting platform not recognized by `addToLiveMeeting`.
**Fix:** Fireflies supports Google Meet, Zoom, and Microsoft Teams. Verify the `meeting_link` is a valid URL for one of these platforms.
---
### `payload_too_small` (400)
**Message:** Uploaded audio file is below 50KB minimum.
**Fix:** Set `bypass_size_check: true` in `AudioUploadInput` for short clips:
```typescript
await firefliesQuery(`
mutation($input: AudioUploadInput) {
uploadAudio(input: $input) { success title message }
}
`, {
input: {
url: "https://example.com/short-clip.mp3",
bypass_size_check: true,
},
});
```
---
### GraphQL Validation Errors (400)
**Message:** Field or argument not found in schema.
```bash
# Introspect the schema to discover available fields
set -euo pipefail
curl -s -X POST https://api.fireflies.ai/graphql \
-H "Authorization: Bearer $FIREFLIES_API_KEY" \
-H "Content-Type: application/json" \
-d '{"query": "{ __schema { queryType { fields { name description } } } }"}' | jq '.data.__schema.queryType.fields[] | {name, description}'
```
---
### Network / Connection Errors
| Symptom | Cause | Fix |
|---------|-------|-----|
| `ECONNREFUSED` | Firewall blocking | Allow outbound HTTPS to `api.fireflies.ai` |
| `ETIMEDOUT` | DNS or network issue | Check DNS resolution for `api.fireflies.ai` |
| `ENOTFOUND` | DNS failure | Verify DNS, try `8.8.8.8` resolver |
## Quick Diagnostic Script
```bash
set -euo pipefail
echo "=== Fireflies.ai Diagnostics ==="
echo "API Key: ${FIREFLIES_API_KEY:+SET (${#FIREFLIES_API_KEY} chars)}"
echo ""
# Connectivity
echo "--- Connectivity ---"
curl -s -o /dev/null -w "HTTP %{http_code} in %{time_total}s\n" \
-X POST https://api.fireflies.ai/graphql \
-H "Authorization: Bearer $FIREFLIES_API_KEY" \
-H "Content-Type: application/json" \
-d '{"query": "{ user { email } }"}'
# Full response
echo ""
echo "--- Auth Check ---"
curl -s -X POST https://api.fireflies.ai/graphql \
-H "Authorization: Bearer $FIREFLIES_API_KEY" \
-H "Content-Type: application/json" \
-d '{"query": "{ user { name email is_admin } }"}' | jq .
```
## Deprecated Fields
These fields still work but will be removed:
| Deprecated | Replacement |
|-----------|-------------|
| `transcript.host_email` | `transcript.organizer_email` |
| `transcripts(date: ...)` | `transcripts(fromDate: ..., toDate: ...)` |
| `transcripts(title: ...)` | `transcripts(keyword: ..., scope: ...)` |
| `transcripts(organizer_email: ...)` | `transcripts(organizers: [...])` |
| `transcripts(participant_email: ...)` | `transcripts(participants: [...])` |
## Output
- Error code identified with root cause
- Fix applied and verified
- Deprecated field warnings resolved
## Resources
- [Fireflies API Docs](https://docs.fireflies.ai/)
- [Fireflies Introspection](https://docs.fireflies.ai/fundamentals/introspection)
- [Fireflies API Concepts](https://docs.fireflies.ai/fundamentals/concepts)
## Next Steps
For comprehensive debugging, see `fireflies-debug-bundle`.