# Ejecutar código en una sesión (/es/api-reference/endpoint/browser-execute)

<!-- agent-signals: reading_time_min: 3 · est_tokens: 1567 · updated: 2026-07-30 -->
Related: [Búsqueda](/es/api-reference/endpoint/search.md), [Comentarios sobre la búsqueda](/es/api-reference/endpoint/search-feedback.md), [Scrape](/es/api-reference/endpoint/scrape.md), [Raspado en lote](/es/api-reference/endpoint/batch-scrape.md), [Obtener el estado de la captura por lotes](/es/api-reference/endpoint/batch-scrape-get.md), [Cancelar extracción en lote](/es/api-reference/endpoint/batch-scrape-delete.md)

<div id="headers">
  ## Cabeceras [#cabeceras]
</div>

| Cabecera        | Valor              |
| --------------- | ------------------ |
| `Authorization` | `Bearer <API_KEY>` |
| `Content-Type`  | `application/json` |

<div id="request-body">
  ## Cuerpo de la solicitud [#cuerpo-de-la-solicitud]
</div>

| Parámetro  | Tipo   | Obligatorio | Predeterminado | Descripción                                                                             |
| ---------- | ------ | ----------- | -------------- | --------------------------------------------------------------------------------------- |
| `code`     | string | Sí          | -              | Código a ejecutar (1-100,000 caracteres)                                                |
| `language` | string | No          | `"node"`       | Idioma del código: `"python"`, `"node"` o `"bash"` (para comandos CLI de agent-browser) |
| `timeout`  | number | No          | -              | Tiempo máximo de ejecución en segundos (1-300)                                          |

<div id="response">
  ## Respuesta [#respuesta]
</div>

| Campo      | Tipo    | Descripción                                                             |
| ---------- | ------- | ----------------------------------------------------------------------- |
| `success`  | boolean | Indica si el código se ejecutó correctamente                            |
| `stdout`   | string  | Salida estándar de la ejecución del código                              |
| `result`   | string  | Resultado estándar de la ejecución del código                           |
| `stderr`   | string  | Salida de error estándar de la ejecución del código                     |
| `exitCode` | number  | Código de salida del proceso ejecutado                                  |
| `killed`   | boolean | Indica si el proceso se terminó por exceder el tiempo de espera         |
| `error`    | string  | Mensaje de error si la ejecución falló (solo presente en caso de error) |

<div id="example-request">
  ### Ejemplo de solicitud [#ejemplo-de-solicitud]
</div>

```bash
curl -X POST "https://api.firecrawl.dev/v2/interact/550e8400-e29b-41d4-a716-446655440000/execute" \
  -H "Authorization: Bearer $FIRECRAWL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "code": "await page.goto(\"https://example.com\")\ntitle = await page.title()\nprint(title)",
    "language": "python"
  }'
```

<div id="example-response-success">
  ### Ejemplo de respuesta (Éxito) [#ejemplo-de-respuesta-éxito]
</div>

```json
{
  "success": true,
  "result": "Example Domain"
}
```

<div id="example-response-error">
  ### Ejemplo de respuesta (error) [#ejemplo-de-respuesta-error]
</div>

```json
{
  "success": true,
  "error": "TimeoutError: page.goto: Timeout 30000ms exceeded."
}
```

> ¿Eres un agente de IA que necesita una clave de la API de Firecrawl? Consulta [firecrawl.dev/agent-onboarding/SKILL.md](https://www.firecrawl.dev/agent-onboarding/SKILL.md) para ver las instrucciones de incorporación automatizada.

`POST /interact/{sessionId}/execute`

Ejecutar código en una sesión de interact

## OpenAPI

```json
{
  "security": [
    {
      "bearerAuth": []
    }
  ],
  "parameters": [
    {
      "description": "El ID de la sesión de interact",
      "in": "path",
      "name": "sessionId",
      "required": true,
      "schema": {
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "properties": {
            "code": {
              "description": "Código que se ejecutará en el sandbox del navegador",
              "maxLength": 100000,
              "minLength": 1,
              "type": "string"
            },
            "language": {
              "default": "node",
              "description": "Lenguaje del código que se ejecutará. Usa `node` para JavaScript o `bash` para comandos de la CLI de agent-browser.",
              "enum": [
                "python",
                "node",
                "bash"
              ],
              "type": "string"
            },
            "timeout": {
              "description": "Tiempo de espera de ejecución en segundos",
              "maximum": 300,
              "minimum": 1,
              "type": "integer"
            }
          },
          "required": [
            "code"
          ],
          "type": "object"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "properties": {
              "error": {
                "description": "Mensaje de error si el código generó una excepción",
                "nullable": true,
                "type": "string"
              },
              "exitCode": {
                "description": "Código de salida del proceso ejecutado",
                "nullable": true,
                "type": "integer"
              },
              "killed": {
                "description": "Si el proceso fue finalizado por tiempo de espera",
                "type": "boolean"
              },
              "result": {
                "description": "Salida estándar (alias de stdout)",
                "nullable": true,
                "type": "string"
              },
              "stderr": {
                "description": "Salida de error estándar de la ejecución del código",
                "nullable": true,
                "type": "string"
              },
              "stdout": {
                "description": "Salida estándar de la ejecución del código",
                "nullable": true,
                "type": "string"
              },
              "success": {
                "type": "boolean"
              }
            },
            "type": "object"
          }
        }
      },
      "description": "Código ejecutado correctamente"
    },
    "402": {
      "content": {
        "application/json": {
          "schema": {
            "properties": {
              "error": {
                "example": "Payment required to access this resource.",
                "type": "string"
              }
            },
            "type": "object"
          }
        }
      },
      "description": "Pago requerido"
    }
  }
}
```
