| name | firecrawl-security-basics |
| description | Apply Firecrawl security best practices for API key management and webhook verification.
Use when securing API keys, implementing webhook signature validation,
or auditing Firecrawl security configuration.
Trigger with phrases like "firecrawl security", "firecrawl secrets",
"secure firecrawl", "firecrawl API key security", "firecrawl webhook signature".
|
| allowed-tools | Read, Write, Grep |
| version | 1.11.0 |
| license | MIT |
| author | Jeremy Longshore <jeremy@intentsolutions.io> |
| tags | ["saas","firecrawl","api","security","audit"] |
| compatibility | Designed for Claude Code, also compatible with Codex and OpenClaw |
Firecrawl Security Basics
Overview
Security best practices for Firecrawl API keys, webhook signature verification, and scraped content handling. Firecrawl API keys start with fc- and grant full access to scrape, crawl, map, and extract endpoints — protecting them is critical.
Prerequisites
- Firecrawl API key
- Understanding of environment variables
- Webhook endpoint (if using async crawl callbacks)
Instructions
Step 1: Secure API Key Storage
FIRECRAWL_API_KEY=fc-your-api-key-here
echo -e "\n.env\n.env.local\n.env.*.local" >> .gitignore
import FirecrawlApp from "@mendable/firecrawl-js";
if (!process.env.FIRECRAWL_API_KEY?.startsWith("fc-")) {
throw new Error("FIRECRAWL_API_KEY must be set and start with 'fc-'");
}
const firecrawl = new FirecrawlApp({
apiKey: process.env.FIRECRAWL_API_KEY,
});
Step 2: Verify Webhook Signatures
Firecrawl signs webhook payloads with HMAC-SHA256 via the X-Firecrawl-Signature header.
import crypto from "crypto";
function verifyWebhookSignature(
payload: string,
signature: ,
:
): {
expected = crypto
.(, secret)
.(payload)
.();
crypto.(
.(signature),
.(expected)
);
}
app.(, {
signature = req.[] ;
rawBody = .(req.);
(!(rawBody, signature, process..!)) {
.();
res.().({ : });
}
{ , data } = req.;
.();
res.().({ : });
});