Переключить тему
HTTP API для агентов
В Jay Flow агент доступен по HTTP-эндпоинту:
https://jayflow.ai/channel/api/{channelId}
где {channelId}
— уникальный идентификатор вашего канала (агента).
Общие параметры
- input (string) — входной запрос к агенту.
- threadId (string, опционально) — идентификатор сессии (диалога). При отсутствии создаётся новый поток.
GET-запрос
Новый диалог
curl -X GET "https://jayflow.ai/channel/api/12345?input=hello"
Продолжение диалога
curl -X GET "https://jayflow.ai/channel/api/12345?threadId=681a191ad74ee8d89080289a"
Пример ответа
json
{
"threadId": "681a191ad74ee8d89080289a",
"content": "Hello! How can I help you today?",
"messages": [
{
"id": "681a191ad74ee8d89080289d",
"content": "Hello! How can I help you today?",
"annotations": []
}
],
"images": []
}
Пояснения:
- threadId — сохраняйте для следующих запросов.
- content — ответ агента в формате Markdown (по умолчанию).
- messages — части этого ответа.
- images — ссылки на изображения (если были сгенерированы).
POST с JSON
Новый диалог
curl -X POST "https://jayflow.ai/channel/api/12345" \
-H "Content-Type: application/json" \
-d '{"input":"hello"}'
Продолжение диалога
curl -X POST "https://jayflow.ai/channel/api/12345" \
-H "Content-Type: application/json" \
-d '{"input":"hello","threadId":"681a191ad74ee8d89080289a"}'
Аутентификация
Если канал защищён API-ключом (в настройках агента), укажите его в заголовке:
-H "Authorization: <API_KEY>"
Пример:
curl -X POST "https://jayflow.ai/channel/api/12345" \
-H "Authorization: abcdef123456" \
-H "Content-Type: application/json" \
-d '{"input":"hello"}'
Загрузка файлов (multipart/form-data)
Агент умеет принимать файлы через поле files
. Можно отправить несколько.
curl -X POST "https://jayflow.ai/channel/api/12345" \
-H "Authorization: abcdef123456" \
-H "Content-Type: multipart/form-data" \
-F "input=сколько потратили по документам" \
-F "files=@/path/to/file1.pdf" \
-F "files=@/path/to/file2.xlsx"
input при этом необяазателен, агент может сгенерировать ответ без него, если он знает что делать с файлами.
Пример ответа с файлами и изображениями
json
{
"threadId": "681a191ad74ee8d89080289a",
"content": "Here are the documents I found:\n- [file1_link]\n- [file2_link]",
"images": ["image1_link","image2_link"]
}
- В
content
— ссылки на сгенерированные файлы (в виде Markdown). - В
images
— прямые URL изображений.
JSON-режим
Если в настройках агента включён JSON-режим, поле content
будет содержать не строку Markdown, а полноценный JSON-объект.