# Executar Código em uma Sessão (/pt-BR/api-reference/endpoint/browser-execute)

<!-- agent-signals: reading_time_min: 3 · est_tokens: 1530 · updated: 2026-07-30 -->
Related: [Pesquisa](/pt-BR/api-reference/endpoint/search.md), [Feedback de busca](/pt-BR/api-reference/endpoint/search-feedback.md), [Raspar](/pt-BR/api-reference/endpoint/scrape.md), [Raspar em lote](/pt-BR/api-reference/endpoint/batch-scrape.md), [Obter status do scrape em lote](/pt-BR/api-reference/endpoint/batch-scrape-get.md), [Cancelar raspagem em lote](/pt-BR/api-reference/endpoint/batch-scrape-delete.md)

<div id="headers">
  ## Cabeçalhos [#cabeçalhos]
</div>

| Cabeçalho       | Valor              |
| --------------- | ------------------ |
| `Authorization` | `Bearer <API_KEY>` |
| `Content-Type`  | `application/json` |

<div id="request-body">
  ## Corpo da requisição [#corpo-da-requisição]
</div>

| Parâmetro  | Tipo   | Obrigatório | Padrão   | Descrição                                                                                  |
| ---------- | ------ | ----------- | -------- | ------------------------------------------------------------------------------------------ |
| `code`     | string | Sim         | -        | Código a ser executado (1-100.000 caracteres)                                              |
| `language` | string | Não         | `"node"` | Idioma do código: `"python"`, `"node"` ou `"bash"` (para comandos de CLI do agent-browser) |
| `timeout`  | number | Não         | -        | Tempo máximo de execução em segundos (1-300)                                               |

<div id="response">
  ## Resposta [#resposta]
</div>

| Campo      | Tipo    | Descrição                                                        |
| ---------- | ------- | ---------------------------------------------------------------- |
| `success`  | boolean | Indica se o código foi executado com sucesso                     |
| `stdout`   | string  | Saída padrão da execução do código                               |
| `result`   | string  | Saída padrão da execução do código                               |
| `stderr`   | string  | Saída de erro padrão da execução do código                       |
| `exitCode` | number  | Código de saída do processo executado                            |
| `killed`   | boolean | Indica se o processo foi finalizado por tempo limite (timeout)   |
| `error`    | string  | Mensagem de erro caso a execução falhe (apenas em caso de falha) |

<div id="example-request">
  ### Exemplo de requisição [#exemplo-de-requisição]
</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">
  ### Exemplo de resposta (sucesso) [#exemplo-de-resposta-sucesso]
</div>

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

<div id="example-response-error">
  ### Exemplo de resposta (erro) [#exemplo-de-resposta-erro]
</div>

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

> Você é um agente de IA que precisa de uma Firecrawl API key? Veja [firecrawl.dev/agent-onboarding/SKILL.md](https://www.firecrawl.dev/agent-onboarding/SKILL.md) para instruções de onboarding automatizado.

`POST /interact/{sessionId}/execute`

Executar código em uma sessão de interação

## OpenAPI

```json
{
  "security": [
    {
      "bearerAuth": []
    }
  ],
  "parameters": [
    {
      "description": "O ID da sessão de interação",
      "in": "path",
      "name": "sessionId",
      "required": true,
      "schema": {
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "properties": {
            "code": {
              "description": "Código a ser executado no browser sandbox",
              "maxLength": 100000,
              "minLength": 1,
              "type": "string"
            },
            "language": {
              "default": "node",
              "description": "Linguagem do código a ser executado. Use `node` para JavaScript ou `bash` para comandos de CLI do agent-browser.",
              "enum": [
                "python",
                "node",
                "bash"
              ],
              "type": "string"
            },
            "timeout": {
              "description": "Tempo limite de execução em segundos",
              "maximum": 300,
              "minimum": 1,
              "type": "integer"
            }
          },
          "required": [
            "code"
          ],
          "type": "object"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "properties": {
              "error": {
                "description": "Mensagem de erro caso o código gere uma exceção",
                "nullable": true,
                "type": "string"
              },
              "exitCode": {
                "description": "Código de saída do processo executado",
                "nullable": true,
                "type": "integer"
              },
              "killed": {
                "description": "Se o processo foi encerrado devido ao tempo limite",
                "type": "boolean"
              },
              "result": {
                "description": "Saída padrão (alias de stdout)",
                "nullable": true,
                "type": "string"
              },
              "stderr": {
                "description": "Saída de erro padrão da execução do código",
                "nullable": true,
                "type": "string"
              },
              "stdout": {
                "description": "Saída padrão da execução do código",
                "nullable": true,
                "type": "string"
              },
              "success": {
                "type": "boolean"
              }
            },
            "type": "object"
          }
        }
      },
      "description": "Código executado com sucesso"
    },
    "402": {
      "content": {
        "application/json": {
          "schema": {
            "properties": {
              "error": {
                "example": "Payment required to access this resource.",
                "type": "string"
              }
            },
            "type": "object"
          }
        }
      },
      "description": "Pagamento necessário"
    }
  }
}
```
