# Создаёт полные карты сайта с помощью Tavily Map.

**API:** Data API

**Endpoint:** `POST /v1/beta/tavily/map`

**Tags:** Web Content

Перечисляет URL сайта от корневого `url`, не загружая содержимое страниц. Управляйте обходом с помощью `instructions` на естественном языке и фильтров `select_paths` / `exclude_paths` / `select_domains` на регулярных выражениях. Возвращает `base_url` и `results` — **плоский массив строк URL, а не объектов** — вместе с `response_time` и `request_id`. Используйте, чтобы оценить размер сайта перед обходом, а затем загрузите только нужные части через `extractWebContent`. Если нужно содержимое, а не структура, `post_tavily_crawl` делает и то и другое за один вызов.

### Справочная информация о ценах

- Тарификация: тарифицируемые единицы ответа.
- Справочная оценка запроса: USD 0.064.
- Базовая стоимость единицы: USD 0.008.
- Единица ресурса: `tavily_credit`.
- Справочный множитель для клиента: 1.0. Не применяйте его повторно к уже рассчитанной сумме клиента.
- Базовые стоимости не определяют итоговую цену для клиента, в том числе когда они равны нулю.

Только справочные метаданные, а не котировка для аккаунта, гарантированная цена или лимит расходов. Кредиты ресурсов — не кредиты Felo. Итоговые списания определяются записями биллинга Felo.

## Base URL

- `https://openapi.felo.ai`

## Authentication

- `FeloBearerAuth` (http bearer, bearer format Felo API Key)
- `FeloApiKey` (apiKey in header `X-API-Key`)

## Request body

Required: **yes**

### application/json

Schema:

```json
{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "description": "Корневой URL для начала сопоставления.",
      "example": "docs.tavily.com"
    },
    "instructions": {
      "type": "string",
      "description": "Инструкции для краулера на естественном языке."
    },
    "max_depth": {
      "type": "integer",
      "default": 1,
      "description": "Максимальная глубина сопоставления.",
      "minimum": 1,
      "maximum": 5
    },
    "max_breadth": {
      "type": "integer",
      "default": 20,
      "description": "Максимальное количество ссылок для перехода на каждом уровне дерева.",
      "minimum": 1,
      "maximum": 500
    },
    "limit": {
      "type": "integer",
      "default": 50,
      "description": "Общее количество ссылок, которые краулер обработает до остановки.",
      "minimum": 1
    },
    "select_paths": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Regex-шаблоны для выбора только URL с определёнными шаблонами путей."
    },
    "select_domains": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Regex-шаблоны для выбора обхода только конкретных доменов или поддоменов."
    },
    "exclude_paths": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Regex-шаблоны для исключения URL с определёнными шаблонами путей."
    },
    "exclude_domains": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Regex-шаблоны для исключения конкретных доменов или поддоменов из сопоставления."
    },
    "allow_external": {
      "type": "boolean",
      "default": true,
      "description": "Включать ссылки на внешние домены в итоговый список результатов."
    },
    "timeout": {
      "type": "number",
      "format": "float",
      "default": 150,
      "description": "Максимальное время ожидания операции map в секундах.",
      "minimum": 10,
      "maximum": 150
    },
    "include_usage": {
      "type": "boolean",
      "default": false,
      "description": "Включать сведения об использовании кредитов в ответ."
    }
  },
  "required": [
    "url"
  ]
}
```

## Responses

### 200 — Результаты карты успешно возвращены.

Headers:
- `X-Request-Id` (string) — Идентификатор запроса, который нужно указать при обращении в поддержку Felo.

**application/json**

Schema: object

```json
{
  "type": "object",
  "properties": {
    "base_url": {
      "type": "string",
      "description": "Базовый URL, который был сопоставлен."
    },
    "results": {
      "type": "array",
      "items": {
        "type": "string",
        "description": "URL, обнаруженные во время сопоставления."
      }
    },
    "response_time": {
      "type": "number",
      "format": "float",
      "description": "Время выполнения запроса в секундах."
    },
    "usage": {
      "type": "object",
      "properties": {
        "credits": {
          "type": "integer",
          "description": "Сведения об использовании кредитов для запроса."
        }
      }
    },
    "request_id": {
      "type": "string",
      "description": "Уникальный идентификатор запроса."
    }
  }
}
```

### 400 — Запрос не удалось обработать. Проверьте параметры запроса.

### 401 — Требуется действительный API-ключ Felo.

### 402 — Запрос не может быть выполнен: не выполнено требование биллинга.

### 403 — Аккаунту не разрешено выполнять эту операцию.

### 429 — Достигнут лимит запросов или расходов.

### 502 — Сервис не смог выполнить запрос.

### 503 — API или сервис биллинга временно недоступны.

### 504 — Истекло время ожидания обработки запроса.

### default — Ответ с ошибкой; сквозные ответы upstream могут использовать форматы провайдера

**application/json**

Schema:

```json
{}
```
