> ## Documentation Index
> Fetch the complete documentation index at: https://firecrawl-mog-monitoring-docs.mintlify.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Introducción

> Busca en la web, haz scraping de cualquier página e interactúa con ella — todo desde una sola API.

<Note>
  **Para agentes de IA:** Añade `.md` a cualquier URL de la documentación para obtener markdown; por ejemplo,
  [introduction.md](/es/introduction.md).
</Note>

<div id="get-started">
  ## Primeros pasos
</div>

<CardGroup cols={2}>
  <Card title="Obtén tu clave de API" icon="key" href="https://www.firecrawl.dev/app/api-keys">
    Regístrate y obtén tu clave de API para empezar a utilizar Firecrawl
  </Card>

  <Card title="Pruébalo en el Playground" icon="play" href="https://www.firecrawl.dev/playground">
    Prueba la API al instante, sin escribir código
  </Card>
</CardGroup>

<div id="use-firecrawl-with-ai-agents-recommended">
  ### Utiliza Firecrawl con agentes de IA (recomendado)
</div>

Las skills de Firecrawl son la forma más rápida para que los agentes descubran y utilicen Firecrawl. Sin ellas, tu agente no sabrá que Firecrawl está disponible.

```bash theme={null}
npx -y firecrawl-cli@latest init --all --browser
```

<Note>
  Reinicia el agente después de instalar las skills. Consulta [Skills + CLI](/es/sdks/cli)
  para ver la configuración completa.
</Note>

O bien usa el [MCP Server](/es/mcp-server) para conectar Firecrawl directamente con Claude, Cursor, Windsurf, VS Code y otras herramientas de IA.

***

<div id="what-can-firecrawl-do">
  ## ¿Qué puede hacer Firecrawl?
</div>

<CardGroup cols={3}>
  <Card title="Búsqueda" icon="magnifying-glass" href="#search">
    Buscar en la web y obtener el contenido completo de la página de los resultados
  </Card>

  <Card title="Scraping" icon="file-lines" href="#scrape">
    Extraer contenido de cualquier URL como markdown, HTML o JSON estructurado
  </Card>

  <Card title="Interact" icon="hand-pointer" href="#interact">
    Seguir trabajando con cualquier página obtenida mediante scraping — hacer clic, rellenar formularios y extraer contenido dinámico
  </Card>
</CardGroup>

<div id="why-firecrawl">
  ### ¿Por qué Firecrawl?
</div>

* **Salida lista para LLM**: Markdown limpio, JSON estructurado, capturas de pantalla y más.
* **Se encarga de lo difícil**: Proxies, protección anti-bots, renderizado de JavaScript y contenido dinámico.
* **Fiable**: Diseñado para producción, con alta disponibilidad y resultados consistentes.
* **Rápido**: Resultados en segundos, optimizado para un alto rendimiento.
* **MCP Server**: Conecta Firecrawl a cualquier herramienta de IA mediante [Model Context Protocol](/es/mcp-server).

***

<div id="search">
  ## Búsqueda
</div>

Buscar en la web y obtener el contenido completo de la página de los resultados en una sola llamada. Consulta la [documentación de la función Search](/es/features/search) para ver todas las opción.

<CodeGroup>
  ```python Python theme={null}
  from firecrawl import Firecrawl

  firecrawl = Firecrawl(api_key="fc-TU-API-KEY")

  results = firecrawl.search(
      query="firecrawl",
      limit=3,
  )
  print(results)
  ```

  ```js Node theme={null}
  import Firecrawl from '@mendable/firecrawl-js';

  const firecrawl = new Firecrawl({ apiKey: "fc-YOUR-API-KEY" });

  const resultados = await firecrawl.search('firecrawl', {
    limit: 3,
    scrapeOptions: { formats: ['markdown'] }
  });
  console.log(results);
  ```

  ```bash cURL theme={null}
  curl -s -X POST "https://api.firecrawl.dev/v2/search" \
    -H "Authorization: Bearer $FIRECRAWL_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "query": "firecrawl",
      "limit": 3
    }'
  ```

  ```bash CLI theme={null}
  # Buscar en la web
  firecrawl search "firecrawl web scraping" --limit 5 --pretty
  ```
</CodeGroup>

<Accordion title="Respuesta">
  Los SDK devolverán el objeto de datos directamente. cURL devolverá la carga útil completa.

  ```json JSON theme={null}
  {
    "success": true,
    "data": {
      "web": [
        {
          "url": "https://www.firecrawl.dev/",
          "title": "Firecrawl - The Web Data API for AI",
          "description": "The web crawling, scraping, and search API for AI. Built for scale. Firecrawl delivers the entire internet to AI agents and builders.",
          "position": 1
        },
        {
          "url": "https://github.com/firecrawl/firecrawl",
          "title": "mendableai/firecrawl: Turn entire websites into LLM-ready ... - GitHub",
          "description": "Firecrawl is an API service that takes a URL, crawls it, and converts it into clean markdown or structured data.",
          "position": 2
        },
        ...
      ],
      "images": [
        {
          "title": "Quickstart | Firecrawl",
          "imageUrl": "https://mintlify.s3.us-west-1.amazonaws.com/firecrawl/logo/logo.png",
          "imageWidth": 5814,
          "imageHeight": 1200,
          "url": "https://docs.firecrawl.dev/",
          "position": 1
        },
        ...
      ],
      "news": [
        {
          "title": "Y Combinator startup Firecrawl is ready to pay $1M to hire three AI agents as employees",
          "url": "https://techcrunch.com/2025/05/17/y-combinator-startup-firecrawl-is-ready-to-pay-1m-to-hire-three-ai-agents-as-employees/",
          "snippet": "It's now placed three new ads on YC's job board for “AI agents only” and has set aside a $1 million budget total to make it happen.",
          "date": "3 months ago",
          "position": 1
        },
        ...
      ]
    }
  }
  ```
</Accordion>

<div id="scrape">
  ## Scraping
</div>

Haz scraping de cualquier URL y obtén su contenido en markdown, HTML u otros formatos. Consulta la [documentación de la función Scraping](/es/features/scrape) para ver todas las opciones.

<CodeGroup>
  ```python Python theme={null}
  from firecrawl import Firecrawl

  firecrawl = Firecrawl(api_key="fc-YOUR-API-KEY")

  # Extraer datos de un sitio web:
  doc = firecrawl.scrape("https://firecrawl.dev", formats=["markdown", "html"])
  print(doc)
  ```

  ```js Node theme={null}
  import Firecrawl from '@mendable/firecrawl-js';

  const firecrawl = new Firecrawl({ apiKey: "fc-YOUR-API-KEY" });

  // Extraer un sitio web:
  const doc = await firecrawl.scrape('https://firecrawl.dev', { formats: ['markdown', 'html'] });
  console.log(doc);
  ```

  ```bash cURL theme={null}
  curl -s -X POST "https://api.firecrawl.dev/v2/scrape" \
    -H "Authorization: Bearer $FIRECRAWL_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "url": "https://firecrawl.dev",
      "formats": ["markdown", "html"]
    }'
  ```

  ```bash CLI theme={null}
  # Scrape a URL and get markdown
  firecrawl https://firecrawl.dev

  # Con múltiples formatos (devuelve JSON)
  firecrawl https://firecrawl.dev --format markdown,html,links --pretty
  ```
</CodeGroup>

<Accordion title="Respuesta">
  Los SDK devolverán el objeto de datos directamente. cURL devolverá la carga útil exactamente como se muestra a continuación.

  ```json theme={null}
  {
    "success": true,
    "data" : {
      "markdown": "¡Launch Week I ya está aquí! [Consulta nuestro lanzamiento del Día 2 🚀](https://www.firecrawl.dev/blog/launch-week-i-day-2-doubled-rate-limits)[💥 Obtén 2 meses gratis...",
      "html": "<!DOCTYPE html><html lang=\"en\" class=\"light\" style=\"color-scheme: light;\"><body class=\"__variable_36bd41 __variable_d7dc5d font-inter ...",
      "metadata": {
        "title": "Inicio - Firecrawl",
        "description": "Firecrawl rastrea y convierte cualquier sitio web en Markdown limpio.",
        "language": "en",
        "keywords": "Firecrawl,Markdown,Data,Mendable,Langchain",
        "robots": "seguir, indexar",
        "ogTitle": "Firecrawl",
        "ogDescription": "Convierte cualquier sitio web en datos listos para LLM.",
        "ogUrl": "https://www.firecrawl.dev/",
        "ogImage": "https://www.firecrawl.dev/og.png?123",
        "ogLocaleAlternate": [],
        "ogSiteName": "Firecrawl",
        "sourceURL": "https://firecrawl.dev",
        "statusCode": 200,
        "contentType": "text/html"
      }
    }
  }
  ```
</Accordion>

<div id="interact">
  ## Interact
</div>

Haz scraping de una página y luego sigue trabajando con ella — haz clic en botones, completa formularios, extrae contenido dinámico o navega más en profundidad. Describe lo que quieres en inglés sencillo o escribe código para tener control total. Consulta la [documentación de la función Interact](/es/features/interact) para ver todas las opciones.

<CodeGroup>
  ```python Python theme={null}
  from firecrawl import Firecrawl

  app = Firecrawl(api_key="fc-YOUR-API-KEY")

  # 1. Extraer la página principal de Amazon
  result = app.scrape("https://www.amazon.com", formats=["markdown"])
  scrape_id = result.metadata.scrape_id

  # 2. Interactuar — buscar un producto y obtener su precio
  app.interact(scrape_id, prompt="Search for iPhone 16 Pro Max")
  response = app.interact(scrape_id, prompt="Click on the first result and tell me the price")
  print(response.output)

  # 3. Detener la sesión
  app.stop_interaction(scrape_id)
  ```

  ```js Node theme={null}
  import Firecrawl from '@mendable/firecrawl-js';

  const app = new Firecrawl({ apiKey: 'fc-YOUR-API-KEY' });

  // 1. Extraer la página principal de Amazon
  const result = await app.scrape('https://www.amazon.com', { formats: ['markdown'] });
  const scrapeId = result.metadata?.scrapeId;

  // 2. Interactuar — buscar un producto y obtener su precio
  await app.interact(scrapeId, { prompt: 'Search for iPhone 16 Pro Max' });
  const response = await app.interact(scrapeId, { prompt: 'Click on the first result and tell me the price' });
  console.log(response.output);

  // 3. Detener la sesión
  await app.stopInteraction(scrapeId);
  ```

  ```bash cURL theme={null}
  # 1. Extraer la página principal de Amazon
  RESPONSE=$(curl -s -X POST "https://api.firecrawl.dev/v2/scrape" \
    -H "Authorization: Bearer $FIRECRAWL_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{"url": "https://www.amazon.com", "formats": ["markdown"]}')

  SCRAPE_ID=$(echo $RESPONSE | jq -r '.data.metadata.scrapeId')

  # 2. Interactuar — buscar un producto y obtener su precio
  curl -s -X POST "https://api.firecrawl.dev/v2/scrape/$SCRAPE_ID/interact" \
    -H "Authorization: Bearer $FIRECRAWL_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{"prompt": "Search for iPhone 16 Pro Max"}'

  curl -s -X POST "https://api.firecrawl.dev/v2/scrape/$SCRAPE_ID/interact" \
    -H "Authorization: Bearer $FIRECRAWL_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{"prompt": "Click on the first result and tell me the price"}'

  # 3. Detener la sesión
  curl -s -X DELETE "https://api.firecrawl.dev/v2/scrape/$SCRAPE_ID/interact" \
    -H "Authorization: Bearer $FIRECRAWL_API_KEY"
  ```

  ```bash CLI theme={null}
  # 1. Scrape la página principal de Amazon (el ID de scrape se guarda automáticamente)
  firecrawl scrape https://www.amazon.com

  # 2. Interactúa — busca un producto y obtén su precio
  firecrawl interact "Search for iPhone 16 Pro Max"
  firecrawl interact "Click on the first result and tell me the price"

  # 3. Detén la sesión
  firecrawl interact stop
  ```
</CodeGroup>

<Accordion title="Respuesta">
  ```json Response theme={null}
  {
    "success": true,
    "liveViewUrl": "https://liveview.firecrawl.dev/...",
    "interactiveLiveViewUrl": "https://liveview.firecrawl.dev/...",
    "output": "The iPhone 16 Pro Max (256GB) is priced at $1,199.00.",
    "exitCode": 0,
    "killed": false
  }
  ```
</Accordion>

***

<div id="more-capabilities">
  ## Más capacidades
</div>

<CardGroup cols={4}>
  <Card title="Agent" icon="robot" href="/es/features/agent">
    Recopilación autónoma de datos web impulsada por IA
  </Card>

  <Card title="Browser Sandbox" icon="browser" href="/es/features/browser">
    Sesiones de browser administradas para flujos de trabajo interactivos
  </Card>

  <Card title="Mapeo" icon="map" href="/es/features/map">
    Descubre todas las URL de un sitio web
  </Card>

  <Card title="Crawl" icon="spider-web" href="/es/features/crawl">
    Recopila contenido de sitios completos de forma recursiva
  </Card>
</CardGroup>

***

<div id="resources">
  ## Recursos
</div>

<CardGroup cols={2}>
  <Card title="Referencia de la API" icon="code" href="/es/api-reference/v2-introduction">
    Documentación completa de la API con ejemplos interactivos
  </Card>

  <Card title="SDKs" icon="boxes-stacked" href="/es/sdks/overview">
    SDKs para Python, Node.js, CLI y de la comunidad
  </Card>

  <Card title="Código abierto" icon="github" href="/es/contributing/open-source-or-cloud">
    Aloja Firecrawl tú mismo o contribuye al proyecto
  </Card>

  <Card title="Integraciones" icon="puzzle-piece" href="/es/developer-guides/llm-sdks-and-frameworks/openai">
    LangChain, LlamaIndex, OpenAI y más
  </Card>
</CardGroup>
