# Tavily Extract

**API:** Data API

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

**Tags:** Web Content

Извлекает читаемое содержимое из одного URL или массива URL. Выберите текст или Markdown с помощью format. Проверяйте и results, и failed_results: URL с ошибкой может быть указан в остальном успешном HTTP-ответе. Установите include_usage, чтобы получать сведения об использовании ресурсов; usage.credits — это не списание Felo.

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

- Тарификация: тарифицируемые единицы ответа.
- Справочная оценка запроса: USD 0.024.
- Базовая стоимость единицы: 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": {
    "urls": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      ],
      "description": "URL или URL-адреса, из которых нужно извлечь содержимое. Принимается как одна строка URL, так и массив строк URL.",
      "example": [
        "https://en.wikipedia.org/wiki/Artificial_intelligence"
      ]
    },
    "query": {
      "type": "string",
      "description": "Пользовательское намерение для повторного ранжирования извлечённых чанков контента."
    },
    "chunks_per_source": {
      "type": "integer",
      "default": 3,
      "description": "Максимальное количество релевантных чанков, возвращаемых на источник. Доступно только при указании query.",
      "minimum": 1,
      "maximum": 5
    },
    "extract_depth": {
      "type": "string",
      "enum": [
        "basic",
        "advanced"
      ],
      "default": "basic",
      "description": "Глубина процесса извлечения."
    },
    "include_images": {
      "type": "boolean",
      "default": false,
      "description": "Включать список изображений, извлечённых из URL."
    },
    "include_favicon": {
      "type": "boolean",
      "default": false,
      "description": "Включать URL favicon для каждого результата."
    },
    "format": {
      "type": "string",
      "enum": [
        "markdown",
        "text"
      ],
      "default": "markdown",
      "description": "Формат извлечённого содержимого веб-страницы."
    },
    "timeout": {
      "type": "number",
      "format": "float",
      "description": "Максимальное время ожидания извлечения URL в секундах. Если опущено, таймауты по умолчанию зависят от extract_depth: 10 секунд для basic и 30 секунд для advanced.",
      "minimum": 1,
      "maximum": 60
    },
    "include_usage": {
      "type": "boolean",
      "default": false,
      "description": "Включать сведения об использовании ресурсов в ответ. Это не информация о биллинге Felo."
    }
  },
  "required": [
    "urls"
  ]
}
```

Example:

```json
{
  "urls": [
    "https://example.com"
  ],
  "extract_depth": "basic",
  "format": "text",
  "include_usage": true
}
```

## Responses

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

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

**application/json**

Schema: object

```json
{
  "type": "object",
  "properties": {
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "url": {
            "type": "string",
            "description": "URL извлечённого контента."
          },
          "title": {
            "type": "string",
            "description": "Заголовок извлечённой страницы."
          },
          "raw_content": {
            "type": "string",
            "description": "Необработанный контент, извлечённый из URL."
          },
          "images": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Изображения, извлечённые из URL, когда include_images имеет значение true."
          },
          "favicon": {
            "type": [
              "string",
              "null"
            ],
            "description": "URL favicon извлечённого контента."
          }
        }
      }
    },
    "failed_results": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Список URL, которые не удалось обработать."
    },
    "response_time": {
      "type": "number",
      "format": "float",
      "description": "Время выполнения запроса в секундах."
    },
    "usage": {
      "type": "object",
      "properties": {
        "credits": {
          "type": "integer",
          "description": "Единицы ресурсов, израсходованные этим запросом; не USD и не кредиты Felo."
        }
      }
    },
    "request_id": {
      "type": "string",
      "description": "Уникальный идентификатор запроса."
    }
  }
}
```

Example:

```json
{
  "results": [
    {
      "url": "https://example.com",
      "title": "Example Domain",
      "raw_content": "This domain is for use in documentation examples.",
      "images": []
    }
  ],
  "failed_results": [],
  "response_time": 0.5,
  "usage": {
    "credits": 1
  },
  "request_id": "example-extract-request"
}
```

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

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

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

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

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

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

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

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

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

**application/json**

Schema:

```json
{}
```
