'Configure Fireflies.ai GraphQL API authentication and verify connectivity.
Install to Claude Code
npx -y skills add jeremylongshore/tons-of-skills-marketplace --skill fireflies-install-auth --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Fireflies Install Auth?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/jeremylongshore-fireflies-install-auth-72c903b4)More formats (shields.io, HTML) on the badges page.
---
name: fireflies-install-auth
description: 'Configure Fireflies.ai GraphQL API authentication and verify connectivity.
Use when setting up a new Fireflies.ai integration, configuring API keys,
or initializing the GraphQL client for transcript access.
Trigger with phrases like "install fireflies", "setup fireflies",
"fireflies auth", "configure fireflies API key".
'
allowed-tools: Read, Write, Edit, Bash(npm:*), Bash(curl:*), Grep
version: 1.11.0
license: MIT
author: Jeremy Longshore <jeremy@intentsolutions.io>
tags:
- saas
- fireflies
- api
- authentication
compatibility: Designed for Claude Code
---
# Fireflies.ai Install & Auth
## Overview
Set up Fireflies.ai GraphQL API authentication. Fireflies uses a single GraphQL endpoint at `https://api.fireflies.ai/graphql` with Bearer token auth. No SDK needed -- all interaction is via HTTP POST with GraphQL queries.
## Examples
Store a scoped staging key in the approved secret manager and run a read-only query against a fictitious test workspace. Record only the authentication method, scope, and redacted outcome; then revoke the test credential to confirm access does not persist unexpectedly.
## Prerequisites
- Fireflies.ai account (Pro or higher for API access)
- API key from app.fireflies.ai > Integrations > Fireflies API
- Node.js 18+ or Python 3.10+
- A GraphQL client library (optional but recommended)
## Instructions
### Step 1: Get Your API Key
1. Log in at [app.fireflies.ai](https://app.fireflies.ai)
2. Navigate to **Integrations > Fireflies API**
3. Copy your API key (starts with a long alphanumeric string)
4. Store it securely -- this key grants access to all your meeting data
### Step 2: Configure Environment
```bash
set -euo pipefail
# Create .env file (NEVER commit to git)
echo 'FIREFLIES_API_KEY=your-api-key-here' >> .env
# Add to .gitignore
echo '.env' >> .gitignore
echo '.env.local' >> .gitignore
```
### Step 3: Install GraphQL Client (Optional)
```bash
set -euo pipefail
# Node.js -- graphql-request is lightweight and typed
npm install graphql-request graphql
# Or use plain fetch -- no library needed
# Python -- use requests
pip install requests
```
### Step 4: Verify Connection
```typescript
// verify-fireflies.ts
const FIREFLIES_API = "https://api.fireflies.ai/graphql";
async function verifyConnection() {
const query = `{ user { name email is_admin } }`;
const response = await fetch(FIREFLIES_API, {
method: "POST",
headers: {
"Content-Type": "application/json",
Authorization: `Bearer ${process.env.FIREFLIES_API_KEY}`,
},
body: JSON.stringify({ query }),
});
const result = await response.json();
if (result.errors) {
throw new Error(`Auth failed: ${result.errors[0].message}`);
}
const user = result.data.user;
console.log(`Connected as: ${user.name} (${user.email})`);
console.log(`Admin: ${user.is_admin}`);
return user;
}
verifyConnection().catch(console.error);
```
### Step 5: Verify with cURL
```bash
set -euo pipefail
curl -s -X POST https://api.fireflies.ai/graphql \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $FIREFLIES_API_KEY" \
-d '{"query": "{ user { name email } }"}' | jq .
```
### Python Verification
```python
import os, requests
FIREFLIES_API = "https://api.fireflies.ai/graphql"
def verify_connection():
headers = {
"Content-Type": "application/json",
"Authorization": f"Bearer {os.environ['FIREFLIES_API_KEY']}",
}
query = '{ user { name email is_admin } }'
resp = requests.post(FIREFLIES_API, json={"query": query}, headers=headers)
data = resp.json()
if "errors" in data:
raise Exception(f"Auth failed: {data['errors'][0]['message']}")
user = data["data"]["user"]
print(f"Connected as: {user['name']} ({user['email']})")
return user
verify_connection()
```
## Rate Limits by Plan
| Plan | Limit | Notes |
|------|-------|-------|
| Free / Pro | 50 requests/day | Cannot upload audio on Free |
| Business | 60 requests/min | Full API access |
| Enterprise | 60 requests/min | Super Admin webhooks |
## Error Handling
| Error | Code | Solution |
|-------|------|----------|
| `auth_failed` | 401 | Check API key is valid and not expired |
| `too_many_requests` | 429 | Rate limit hit -- back off and retry |
| `account_cancelled` | 403 | Subscription inactive -- renew plan |
| Network timeout | - | Verify outbound HTTPS to api.fireflies.ai |
## Output
- Environment variable configured with API key
- GraphQL client verified against `https://api.fireflies.ai/graphql`
- User identity confirmed via `user` query
## Resources
- [Fireflies API Documentation](https://docs.fireflies.ai/)
- [Fireflies Quickstart](https://docs.fireflies.ai/getting-started/quickstart)
- [Fireflies API Key](https://app.fireflies.ai) (Integrations > Fireflies API)
## Next Steps
After successful auth, proceed to `fireflies-hello-world` for your first transcript query.
Scanned 9/2/2026
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!