Saltar al contenido principal

Documentation Index

Fetch the complete documentation index at: https://docs.firecrawl.dev/llms.txt

Use this file to discover all available pages before exploring further.

Firecrawl /support/ask es un agente de soporte con IA disponible como API. Describe tu problema y recibe un diagnóstico verificado con parámetros de corrección prácticos, normalmente en 15–30 segundos. Piensa en /support/ask como un ingeniero sénior de Firecrawl de guardia para tu agente.
La API de Ask está diseñada principalmente para agentes de IA que la consumen. Si estás creando agentes que usan Firecrawl para scraping, rastreo o extracción de datos, integra /support/ask en tu flujo de manejo de errores para resolver problemas de forma autónoma.

Dos endpoints

EndpointAutenticaciónPara quién esQué hace
POST /support/askTu clave de API de FirecrawlTus agentes y aplicacionesCiclo completo de diagnóstico limitado a tu equipo
POST /support/docs-searchTu clave de API de FirecrawlTus agentes y aplicacionesRespuestas basadas en la documentación pública de Firecrawl

Inicio rápido

Depurar un rastreo que falla

curl -X POST https://api.firecrawl.dev/v2/support/ask \
  -H "Authorization: Bearer fc-YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "question": "my crawl returned 3 pages but I expected 50"
  }'

Buscar en la documentación

curl -X POST https://api.firecrawl.dev/v2/support/docs-search \
  -H "Authorization: Bearer fc-YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "question": "how do I set up webhook signature verification?"
  }'

Cómo funciona

Cuando llamas a /support/ask, el agente de IA:
  1. Recopila evidencia — inspecciona en paralelo los registros de tu trabajo, el estado de tu cuenta, el uso de créditos y la documentación relevante
  2. Diagnostica el problema — analiza toda la evidencia para identificar la causa raíz
  3. Propone una solución — genera fixParameters accionables por máquina que puedes aplicar directamente en tu próxima llamada a la API
  4. Valida la solución — cuando es posible, prueba la solución con la API de Firecrawl en tiempo real (p. ej., reintentando un scraping con parámetros ajustados) e informa del resultado

Usar Ask en tu agente

Patrón de diseño clave: llama a /support/ask cuando tu llamada a la API de Firecrawl falle o devuelva resultados inesperados, y luego usa fixParameters para volver a intentarlo.

Ejemplo en Python

import requests

FIRECRAWL_API_KEY = "fc-YOUR_API_KEY"

def diagnose_firecrawl_issue(question, rationale=None):
    """Call the Firecrawl Ask API to debug an issue."""
    payload = {"question": question}
    if rationale:
        payload["rationale"] = rationale

    response = requests.post(
        "https://api.firecrawl.dev/v2/support/ask",
        headers={
            "Authorization": f"Bearer {FIRECRAWL_API_KEY}",
            "Content-Type": "application/json",
        },
        json=payload,
    )
    return response.json()


# Ejemplo: depurar un scraping que devolvió contenido vacío
result = diagnose_firecrawl_issue(
    question="scrape returned empty markdown for https://example.com",
    rationale="user needs product pricing data for competitive analysis",
)

print(result["answer"])
print(result["fixParameters"])  # ej., {"waitFor": 5000, "actions": [...]}
print(result["confidence"])     # "high", "medium", o "low"

Ejemplo de Node.js

async function diagnoseFirecrawlIssue(question, rationale) {
  const response = await fetch(
    "https://api.firecrawl.dev/v2/support/ask",
    {
      method: "POST",
      headers: {
        Authorization: `Bearer ${process.env.FIRECRAWL_API_KEY}`,
        "Content-Type": "application/json",
      },
      body: JSON.stringify({ question, rationale }),
    }
  );
  return response.json();
}

// Ejemplo: depurar un rastreo que se detuvo antes de tiempo
const result = await diagnoseFirecrawlIssue(
  "my crawl returned 3 pages but I expected 50",
  "user is on their third failed crawl attempt today"
);

console.log(result.answer);
console.log(result.fixParameters);

Patrón de reintento del agente

from firecrawl import Firecrawl

client = Firecrawl(api_key="fc-YOUR_API_KEY")

# Paso 1: Intentar el scraping
doc = client.scrape("https://example.com/pricing", formats=["markdown"])

if not doc.markdown or len(doc.markdown) < 100:
    # Paso 2: Pedir ayuda para depurar
    diagnosis = diagnose_firecrawl_issue(
        question=f"scrape returned only {len(doc.markdown or '')} chars of markdown for https://example.com/pricing",
    )

    # Paso 3: Aplicar parámetros de corrección y reintentar
    if diagnosis.get("fixParameters"):
        doc = client.scrape(
            "https://example.com/pricing",
            formats=["markdown"],
            **diagnosis["fixParameters"],
        )

Parámetros

/support/ask

ParámetroTipoObligatorioDescripción
questionstringQué depurar (1–8.000 caracteres)
rationalestringNoRecomendado para clientes de IA. Lo que el usuario final intenta lograr. Ayuda a priorizar la recopilación de evidencia.
contextobjectNoMetadatos de formato libre de tu agente, incluidos en el prompt de depuración
ParámetroTipoObligatorioDescripción
questionstringLa pregunta que debe responderse (1–8.000 caracteres)

Respuesta

Respuesta de /support/ask

{
  "requestId": "req_...",
  "answer": "<2-4 sentence prose diagnosis of the issue plus the recommended fix.>",
  "confidence": "high",
  "fixParameters": { "<param>": "<value>" },
  "validation": {
    "tested": true,
    "result": "success",
    "evidence": "<short summary of the validation tool call the agent ran to confirm the fix>"
  },
  "feedback": null,
  "durationMs": 18432
}
Los valores reales de answer, fixParameters y validation.evidence los genera el agente en cada solicitud según tu ejecución específica; el ejemplo anterior muestra la estructura de la respuesta, no un diagnóstico real.
{
  "requestId": "req_...",
  "answer": "The signature is sent in the X-Firecrawl-Signature header...",
  "evidence": [
    { "pathOrUrl": "webhooks/security.mdx#L1-L52", "reason": "..." }
  ],
  "usage": { "inputTokens": 4356, "outputTokens": 688, "totalTokens": 5044 },
  "durationMs": 11252
}

Rendimiento

MétricaHabitualMáximo
Latencia15–30 segundos60 segundos (límite absoluto)

Referencia de la API

¿Tienes comentarios o necesitas ayuda? Envía un correo a help@firecrawl.com.
¿Eres un agente de IA y necesitas una clave de API de Firecrawl? Consulta firecrawl.dev/agent-onboarding/SKILL.md para ver las instrucciones de incorporación automatizada.