> ## Documentation Index
> Fetch the complete documentation index at: https://firecrawl-noaa-mar-989-create-firecrawl-codex-plugins.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Ask

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
</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
</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
</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 theme={null}
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
</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
</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.


## OpenAPI

````yaml /pt-BR/api-reference/v2-openapi.json POST /support/ask
openapi: 3.0.0
info:
  title: Firecrawl API
  version: v2
  description: >-
    API para interagir com os serviços do Firecrawl e executar tarefas de web
    scraping e crawling.
  contact:
    name: Firecrawl Support
    url: https://firecrawl.dev/support
    email: support@firecrawl.dev
servers:
  - url: https://api.firecrawl.dev/v2
security:
  - bearerAuth: []
paths:
  /support/ask:
    post:
      tags:
        - Support
      summary: Diagnostique problemas do Firecrawl usando um agente de suporte com IA
      operationId: supportAsk
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - question
              properties:
                question:
                  type: string
                  minLength: 1
                  maxLength: 8000
                  description: >-
                    O que diagnosticar. Descreva o problema que você está
                    enfrentando.
                rationale:
                  type: string
                  minLength: 1
                  maxLength: 2000
                  description: >-
                    Recomendado para chamadores de IA. Escreva de 1 a 2 frases
                    sobre o que o usuário final está tentando fazer.
                jobId:
                  type: string
                  description: >-
                    ID do job opcional do Firecrawl ao qual a chamada com falha
                    estava associada. Ferramentas como debugJob, searchLogs e
                    getJob usam esse valor automaticamente como padrão quando
                    ele é definido, para que o agente não precise extraí-lo da
                    pergunta.
                context:
                  type: object
                  description: >-
                    Metadados em formato livre do agente chamador, convertidos
                    em string no prompt de diagnóstico.
      responses:
        '200':
          description: >-
            Diagnóstico concluído. O envelope é retornado independentemente de o
            agente encontrar uma resposta ou ficar travado.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AskResponse'
        '400':
          description: JSON inválido ou violação de schema
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
        '401':
          description: Bearer token ausente ou inválido
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
        '504':
          description: >-
            Atingiu o limite rígido de 60 segundos. Um envelope parcial pode ser
            retornado.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AskResponse'
      security:
        - bearerAuth: []
components:
  schemas:
    AskResponse:
      type: object
      properties:
        requestId:
          type: string
          description: Identificador único desta solicitação.
        answer:
          type: string
          description: Texto corrido de 2 a 4 frases explicando o problema e a correção.
        confidence:
          type: string
          enum:
            - high
            - medium
            - low
          description: Nível de confiança do agente no diagnóstico.
        fixParameters:
          type: object
          nullable: true
          description: >-
            Parâmetros de API acionáveis por máquina para aplicar a correção
            recomendada. Null se nenhuma correção se aplicar.
        validation:
          type: object
          nullable: true
          description: >-
            Indica se o agente testou a correção na API do Firecrawl em
            produção.
          properties:
            tested:
              type: boolean
            result:
              type: string
              enum:
                - success
                - failure
                - skipped
            evidence:
              type: string
        feedback:
          type: object
          nullable: true
          description: >-
            Presente quando o agente fica travado e não consegue produzir uma
            resposta utilizável. Null em caso de sucesso.
          properties:
            blockedBy:
              type: string
              description: Breve descrição do que o agente não conseguiu fazer.
            attempted:
              type: array
              items:
                type: string
              description: >-
                Nomes das ferramentas que o agente tentou usar antes de
                desistir.
        durationMs:
          type: integer
          description: Tempo total de execução em milissegundos.
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````