# Felo Чат із вебпошуком

POST /api/v1/data/chat

Надішліть запитання та отримайте згенеровану відповідь із вебджерелами в одному повідомленні.

У всіх прикладах використовується `FELO_API_KEY` з [огляду](https://openapi.felo.ai/uk/docs/data-api/guides/felo-overview.md). Виклики використовують **баланс платформи**, а не кредити Felo Pro. Приклади відповідей є ілюстративними; живий контент і необов’язкові поля можуть відрізнятися.

## Кінцева точка

`POST /api/v1/data/chat`

Це кінцева точка балансу платформи. [Felo Search API](https://openapi.felo.ai/uk/docs/api-reference/chat.md) на `/v2/chat` використовує Pro credits і має іншу оболонку відповіді.

## Запит

| Поле | Тип | Обов’язкове | Значення |
|---|---|---|---|
| `query` | string | Так | Запитання, 1–2,000 символів |
| `accept_language` | string | Ні | Бажана мова відповіді, наприклад `en`, `ja` або `zh-CN`; максимум 64 символи |
| `stream` | boolean | Ні | Має бути `false`; за замовчуванням `false` |

Використовуйте мовний тег із кодом мови з 2–8 літер і необов’язковими підмітками, розділеними дефісом, наприклад `zh-TW`. Сервіс додає цю перевагу до запиту на генерацію. Якщо її не вказано, вхідний сервіс сам обирає мову; фіксованого значення за замовчуванням немає, і англомовне запитання не гарантує англомовну відповідь. Перевага застосовується до згенерованої відповіді; заголовки та уривки джерел зберігають свою оригінальну мову.

Ця кінцева точка повертає нестрімінговий JSON. Вона не підтримує `stream: true`, SSE, масив `messages` або вибір моделі.

```bash
curl -sS --request POST "https://openapi.felo.ai/api/v1/data/chat" \
  -H "Authorization: Bearer $FELO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"query":"Explain retrieval augmented generation and cite sources.","accept_language":"en","stream":false}'
```

## Відповідь

HTTP 200 повертає `status: "ok"` і об’єкт `data`:

```json
{
  "status": "ok",
  "data": {
    "id": "example-chat-id",
    "message_id": "example-message-id",
    "answer": "Retrieval augmented generation adds retrieved context to a model request...",
    "resources": [
      {"title":"Example reference","link":"https://example.com/guide","snippet":"An overview of retrieval augmented generation."}
    ],
    "query_analysis": {"queries":["retrieval augmented generation"]}
  }
}
```

| Поле | Значення |
|---|---|
| `data.answer` | Згенерована відповідь |
| `data.resources` | Сторінки-джерела із заголовками, посиланнями та фрагментами |
| `data.query_analysis` | Необов’язковий аналіз запиту; може бути null |
| `data.id`, `data.message_id` | Ідентифікатори відповіді |

Спочатку перевіряйте HTTP-статус, потім читайте відповідь і джерела. Не перевіряйте числове `status: 200`, як це робиться з `/v2/chat`.

## Білінг

`chat` оплачується за запит, а не за токенами моделі. Дивіться [поточні ціни](https://openapi.felo.ai/api/v1/data/prices) і [Білінг і помилки](https://openapi.felo.ai/uk/docs/data-api/guides/felo-billing.md).
