# Ask (/pt-BR/api-reference/endpoint/ask)

<!-- agent-signals: reading_time_min: 5 · est_tokens: 2165 · 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)

O endpoint `/support/ask` é um agente de suporte com IA que diagnostica problemas nos seus jobs do Firecrawl, na sua conta e no uso da API. Envie uma pergunta e receba uma resposta verificada com parâmetros práticos para correção — normalmente em 15–30 segundos.

<div id="designed-for-ai-agents">
  ## Desenvolvido para agentes de IA [#desenvolvido-para-agentes-de-ia]
</div>

`/support/ask` foi criado para comunicação **de agente para agente**. Se você estiver criando um agente de IA que usa o Firecrawl, conecte esse endpoint ao seu fluxo de tratamento de erros para que seu agente possa diagnosticar por conta própria falhas de scraping, problemas de rastreamento e problemas de configuração sem intervenção humana.

Passe um campo `rationale` para dar contexto ao agente de suporte sobre o que seu usuário final está tentando fazer. Isso ajuda a priorizar a coleta de evidências.

<div id="how-it-works">
  ## Como funciona [#como-funciona]
</div>

1. **Você descreve o problema** — uma pergunta em linguagem natural que descreve o problema.
2. **O agente investiga** — ele inspeciona logs de job, o estado da conta, a documentação e o código-fonte.
3. **O agente valida** — quando possível, o agente testa uma correção na API Firecrawl em produção (por exemplo, repetindo um scraping com parâmetros ajustados).
4. **Você recebe uma resposta verificada** — a resposta inclui um `answer` em texto explicativo, `fixParameters` legíveis por máquina que você pode aplicar diretamente e resultados de `validation` mostrando se a correção foi testada.

<div id="authentication">
  ## Autenticação [#autenticação]
</div>

Usa sua chave de API do Firecrawl como token Bearer. A solicitação é automaticamente restrita à sua equipe — você só pode consultar seus próprios jobs e os dados da sua conta.

```bash
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",
    "rationale": "user is on their third failed crawl attempt today"
  }'
```

<div id="response-fields">
  ## Campos da resposta [#campos-da-resposta]
</div>

| Campo           | Tipo    | Descrição                                                     |                                                                                               |
| --------------- | ------- | ------------------------------------------------------------- | --------------------------------------------------------------------------------------------- |
| `answer`        | string  | Texto em prosa de 2 a 4 frases com o diagnóstico e a correção |                                                                                               |
| `confidence`    | string  | `high`, `medium` ou `low`                                     |                                                                                               |
| `fixParameters` | object  | null                                                          | Parâmetros da API para aplicar a correção (por exemplo, `{"waitFor": 5000}`)                  |
| `validation`    | object  | null                                                          | Indica se a correção foi testada: `tested`, `result` (success/failure/skipped), `evidence`    |
| `feedback`      | object  | null                                                          | Presente quando o agente fica bloqueado; `{ blockedBy, attempted }`. Nulo em caso de sucesso. |
| `durationMs`    | integer | Tempo total de execução em milissegundos                      |                                                                                               |

<div id="status-codes">
  ## Códigos de status [#códigos-de-status]
</div>

| Código | Significado                                                  |
| ------ | ------------------------------------------------------------ |
| `200`  | Respondido ou travado (o envelope é sempre retornado)        |
| `400`  | JSON inválido ou violação de esquema                         |
| `401`  | Token Bearer ausente ou inválido                             |
| `504`  | Atingiu o limite rígido de 60 s — envelope parcial retornado |

Para ver o guia da funcionalidade com exemplos de integração, consulte a [documentação da funcionalidade Ask](/pt-BR/features/ask).

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

`POST /support/ask`

Diagnostique problemas com jobs, conta e uso da API do Firecrawl com um agente de suporte por IA.

## OpenAPI

```json
{
  "security": [
    {
      "bearerAuth": []
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "additionalProperties": true,
          "properties": {
            "question": {
              "description": "Pergunta ou problema para o agente de suporte diagnosticar.",
              "type": "string"
            },
            "rationale": {
              "description": "Contexto opcional sobre o que o usuário final está tentando fazer.",
              "type": "string"
            }
          },
          "required": [
            "question"
          ],
          "type": "object"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "properties": {
              "answer": {
                "description": "Diagnóstico e correção recomendada.",
                "type": "string"
              },
              "confidence": {
                "enum": [
                  "high",
                  "medium",
                  "low"
                ],
                "type": "string"
              },
              "durationMs": {
                "description": "Tempo total de execução do agente de suporte, em milissegundos.",
                "type": "integer"
              },
              "feedback": {
                "additionalProperties": true,
                "description": "Presente quando o agente de suporte está bloqueado ou precisa de mais informações.",
                "nullable": true,
                "type": "object"
              },
              "fixParameters": {
                "additionalProperties": true,
                "description": "Parâmetros de API legíveis por máquina que podem corrigir o problema.",
                "nullable": true,
                "type": "object"
              },
              "validation": {
                "additionalProperties": true,
                "description": "Resultado da validação quando o agente de suporte testou ou tentou aplicar uma correção.",
                "nullable": true,
                "type": "object"
              }
            },
            "type": "object"
          }
        }
      },
      "description": "Resposta do agente de suporte"
    },
    "400": {
      "content": {
        "application/json": {
          "schema": {
            "properties": {
              "error": {
                "description": "Código de erro do proxy de suporte ou do upstream.",
                "type": "string"
              }
            },
            "type": "object"
          }
        }
      },
      "description": "Solicitação inválida"
    },
    "401": {
      "content": {
        "application/json": {
          "schema": {
            "properties": {
              "error": {
                "description": "Código de erro do proxy de suporte ou do upstream.",
                "type": "string"
              }
            },
            "type": "object"
          }
        }
      },
      "description": "Token Bearer ausente ou inválido"
    },
    "503": {
      "content": {
        "application/json": {
          "schema": {
            "properties": {
              "error": {
                "description": "Código de erro do proxy de suporte ou do upstream.",
                "type": "string"
              }
            },
            "type": "object"
          }
        }
      },
      "description": "Agente de suporte indisponível"
    },
    "504": {
      "content": {
        "application/json": {
          "schema": {
            "properties": {
              "error": {
                "description": "Código de erro do proxy de suporte ou do upstream.",
                "type": "string"
              }
            },
            "type": "object"
          }
        }
      },
      "description": "Tempo limite do agente de suporte"
    }
  }
}
```
