From fireflies-pack
Diagnose Fireflies.ai GraphQL API errors by code like auth_failed (401), too_many_requests (429), and invalid payloads, with root causes, fixes, and curl auth tests.
npx claudepluginhub jeremylongshore/claude-code-plugins-plus-skills --plugin fireflies-packThis skill is limited to using the following tools:
Quick reference for all Fireflies.ai GraphQL API error codes with root causes and fixes.
Runs triage, decision tree, and remediation for Fireflies.ai API outages, auth failures (401), rate limits (429), and webhook issues using curl/GraphQL checks.
Diagnoses and fixes Fathom API errors including 401 unauthorized, rate limits, empty transcripts, missing summaries, webhook failures, and OAuth issues. Provides curl diagnostics.
Diagnoses and fixes common Linear GraphQL API/SDK errors including authentication (401), rate limits (429), and query issues with TypeScript diagnostics and curl checks.
Share bugs, ideas, or general feedback.
Quick reference for all Fireflies.ai GraphQL API error codes with root causes and fixes.
All Fireflies errors follow this GraphQL error structure:
{
"errors": [{
"message": "Human-readable description",
"code": "error_code",
"friendly": true,
"extensions": {
"status": 400,
"helpUrls": ["https://docs.fireflies.ai/..."]
}
}]
}
auth_failed (401)Message: Invalid or missing API key.
# 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:
await firefliesQuery(`
mutation($input: AudioUploadInput) {
uploadAudio(input: $input) { success title message }
}
`, {
input: {
url: "https://example.com/short-clip.mp3",
bypass_size_check: true,
},
});
Message: Field or argument not found in schema.
# 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}'
| 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 |
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 .
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: [...]) |
For comprehensive debugging, see fireflies-debug-bundle.