# Consulte URLs impactadas por bots com GraphQL

O conjunto de dados **botManagerBreakdownMetrics** fornece acesso a dados agregados em tempo real da atividade do Azion Bot Manager, relacionado a requisições classificadas como bots e bots maliciosos em suas aplicações, bem como as URLs mais impactadas pelo acesso de bots. Este conjunto de dados faz parte da API GraphQL de Real-Time Metrics e é gerado a partir das requisições analisadas e identificadas como bots e bots maliciosos.

Essas informações podem ser acessadas através da API GraphQL. Além disso, esses dados são retidos e disponíveis por até *60 dias*.

Este guia explica como consultar dados do Bot Manager usando o playground GraphiQL.

:::note
Para recuperar esses dados, você deve estar inscrito no Azion Bot Manager e usar a [API GraphQL](/pt-br/documentacao/devtools/graphql-api/visao-geral/). Entre em contato com a [equipe de vendas](https://www.azion.com/pt-br/contato/) para mais detalhes sobre a assinatura.
:::

---

## Consulte os dados

Para consultar as 5 principais URLs impactadas pela atividade de bots, proceda da seguinte forma:

1. Acesse o GraphiQL Playground nesse link: `https://api.azion.com/v4/metrics/graphql`.
    - Você deve estar logado na sua conta Azion. Caso contrário, você receberá uma mensagem de erro.
2. Envie uma query seguindo este formato:

```graphql
query {
  botManagerBreakdownMetrics (
    filter: {
      tsRange: {
        begin: "2024-10-01T00:00:00"
        end: "2024-10-03T00:00:00"
      }
    }
    aggregate: {
      sum: botRequests
    }
    groupBy: [requestUrl]
    orderBy: [sum_DESC]
    limit: 5
  ) {
    requestUrl
    sum
  }
}
```

Onde:

| Campo | Descrição |
|----------|----------|
| `filter` | Define os critérios usados para filtrar os dados retornados pela consulta |
| `tsRange` | Um subcampo de `filter`. Especifica um intervalo de tempo para filtrar dados. Inclui os campos `begin` e `end` para definir os timestamps de início e fim. Formato: `"YYYY-MM-DDTHH:mm:ss"`; exemplo: `"2024-04-11T00:00:00"` |
| `sum: botRequests` | Retorna o número total de requisições classificadas como bots dentro do intervalo de tempo especificado, após a aplicação de quaisquer filtros |
| `orderBy` | Especifica a ordem em que os resultados devem ser retornados. Exemplos: `[sum_DESC]`, para ordem decrescente, e `[sum_ASC]`, para ordem crescente |
| `groupBy` | Especifica os campos pelos quais os resultados da consulta devem ser agrupados. Exemplo: `[requestUrl]` para agrupar por URL |
| `limit` | Especifica o número máximo de resultados a serem retornados. Neste caso, `5` |

:::note
Este exemplo recupera dados para `requestUrl`, as URLs impactadas, e o total (`sum`) de requisições identificadas como bots durante o intervalo de tempo especificado, agrupados pelos campos selecionados. Para saber mais sobre os campos disponíveis, consulte a [documentação dos Campos da GraphQL API do Real-Time Metrics](/pt-br/documentacao/devtools/graphql-api/recursos/campos-gql-real-time-metrics/)
:::

3. Você receberá uma resposta semelhante a esta:

```graphql
{
  "data": {
    "botManagerBreakdownMetrics": [
      {
        "requestUrl": "example-host1.com/api/v1/resource",
        "sum": 333543
      },
      {
        "requestUrl": "example-host2.net/api/v2/data",
        "sum": 107281
      },
      {
        "requestUrl": "example-host3.org/api/v3/info",
        "sum": 103363
      },
      {
        "requestUrl": "example-host4.io/api/v4/details",
        "sum": 89668
      },
      {
        "requestUrl": "example-host5.co/api/v5/summary",
        "sum": 64060
      }
    ]
  }
}
```

Onde: 

| Campo | Descrição |
|----------|----------|
| `requestUrl` | URL impactada pela atividade de bots. Exemplo: `example-host5.co/api/v5/summary` |
| `sum` | Total de requisições envolvendo atividade de bots recebidas pela URL. Este campo é o resultado de uma soma. Exemplo: `333543` |

:::tip
Para saber mais sobre os campos disponíveis, consulte a [documentação dos Campos da API GraphQL do Real-Time Metrics](/pt-br/documentacao/devtools/graphql-api/recursos/campos-gql-real-time-metrics/).
:::