Справочник API

Julien AI

Julien AI работает ассистентом в приложении Gemlead. Через API он отвечает на вопросы о Gemlead и об аккаунте X ключа, его лидах, персонах, кампаниях и диалогах. Он только отвечает и никогда ничего не создаёт, не меняет и не отправляет.

Отправьте сообщение без chat_id, чтобы начать чат, а следующие отправляйте с chat_id из ответа, чтобы продолжить его. Вам доступны только чаты, созданные через API с этим аккаунтом X, но не чаты приложения.

Отправка ждёт ответа до 25 секунд. Если Julien AI нужно больше времени, ответ приходит со статусом running. Запрашивайте его каждые несколько секунд, пока он не станет completed или failed, на это уходит не больше 150 секунд.

Каждый аккаунт X может отправлять 6 сообщений в минуту и 100 в сутки по UTC, по одному за раз в чате и не больше 3 одновременно, каждое от 1 до 4 000 символов. Кроме того, Julien AI принимает 150 сообщений в час на пользователя, считая чат приложения и API вместе.

Объект ответа ассистента

Одно сообщение для Julien AI и его ответ. Этот объект возвращает отправка, и он остаётся доступным по ID.

Атрибуты

  • idstring
    Уникальный идентификатор ответа, rpl_ и 32 символа.
  • objectstring
    Всегда assistant_reply.
  • statusstring
    running, пока Julien AI пишет, затем completed или failed.
    runningcompletedfailed
  • chat_idstring или null
    Чат сообщения. Отправьте с ним следующее сообщение, чтобы продолжить тот же чат. null, пока выполняется первое сообщение нового чата.
  • messageobject или null
    Ваше сообщение в том виде, в каком его хранит чат, объект сообщения ассистента. null, пока статус не completed.
  • replyobject или null
    Ответ Julien AI, объект сообщения ассистента. null, пока статус не completed.
  • errorobject или null
    Причина ошибки ответа, иначе null.
  • created_atstring
    Время отправки сообщения, ISO 8601.
  • completed_atstring или null
    Время завершения ответа, успешного или с ошибкой, ISO 8601. null, пока он выполняется.
Объект ответа ассистента
{
  "id": "rpl_7Hq2LmX9vR4tKp8WzN3cYd6FbJ1sGa5E",
  "object": "assistant_reply",
  "status": "completed",
  "chat_id": "Jc7Rk2WqNb",
  "message": {
    "id": "Qm4xT8vLpZ",
    "object": "assistant_message",
    "chat_id": "Jc7Rk2WqNb",
    "role": "user",
    "text": "Which persona brought the most hot leads?",
    "created_at": "2026-11-06T09:14:02.000Z"
  },
  "reply": {
    "id": "Ra9Yh3KsDw",
    "object": "assistant_message",
    "chat_id": "Jc7Rk2WqNb",
    "role": "assistant",
    "text": "Tipsters, with 38 hot leads this week out of 412 scored. Most of them follow @bettingpros.\n\nShould I compare it with last week?",
    "created_at": "2026-11-06T09:14:09.000Z"
  },
  "error": null,
  "created_at": "2026-11-06T09:14:02.000Z",
  "completed_at": "2026-11-06T09:14:09.000Z"
}

Отправка сообщения

POST/v1/assistant/messagesПраво writeMCPask_julien_ai

Отправляет сообщение Julien AI и ждёт его ответа до 25 секунд. Если дольше, ответ приходит со статусом running, и его нужно запрашивать, пока он не завершится. Отправляйте с Idempotency-Key, чтобы повтор никогда не задал вопрос дважды.

Параметры тела

  • textstringОбязательно
    Ваше сообщение, от 1 до 4 000 символов.
  • chat_idstring
    Чат из предыдущего ответа, в котором нужно продолжить разговор. Без него сообщение начинает новый чат.

Возвращает

Объект ответа ассистента, completed с ответом или running, если Julien AI нужно больше 25 секунд.

Ошибки

  • Отсутствует обязательный параметр. Название параметра указано в param.
  • Текст пустой или длиннее 4 000 символов. Название параметра указано в param.
  • Нет чата с этим ID, созданного через API с этим аккаунтом X. Для чатов самого приложения ответ такой же.
  • Julien AI ещё отвечает на сообщение в этом чате или на 3 сообщения этого аккаунта X.
  • Больше 6 сообщений в минуту с этого аккаунта X или 150 в час для его владельца.
  • С этого аккаунта X уже отправлено 100 сообщений за сегодняшние сутки по UTC.
  • Julien AI недоступен или не смог ответить. Полученное им сообщение остаётся в чате.
POST/v1/assistant/messages
curl -X POST https://gemlead.ai/api/v1/assistant/messages \
  -H "Authorization: Bearer $GEMLEAD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "text": "Which persona brought the most hot leads?"
  }'
Ответ200
{
  "id": "rpl_7Hq2LmX9vR4tKp8WzN3cYd6FbJ1sGa5E",
  "object": "assistant_reply",
  "status": "completed",
  "chat_id": "Jc7Rk2WqNb",
  "message": {
    "id": "Qm4xT8vLpZ",
    "object": "assistant_message",
    "chat_id": "Jc7Rk2WqNb",
    "role": "user",
    "text": "Which persona brought the most hot leads?",
    "created_at": "2026-11-06T09:14:02.000Z"
  },
  "reply": {
    "id": "Ra9Yh3KsDw",
    "object": "assistant_message",
    "chat_id": "Jc7Rk2WqNb",
    "role": "assistant",
    "text": "Tipsters, with 38 hot leads this week out of 412 scored. Most of them follow @bettingpros.\n\nShould I compare it with last week?",
    "created_at": "2026-11-06T09:14:09.000Z"
  },
  "error": null,
  "created_at": "2026-11-06T09:14:02.000Z",
  "completed_at": "2026-11-06T09:14:09.000Z"
}

Получение ответа

GET/v1/assistant/replies/:reply_idПраво readMCPask_julien_ai

Возвращает ответ. Пока у него статус running, запрашивайте его каждые несколько секунд. Он завершается статусом completed с ответом Julien AI или failed с error.

Параметры пути

  • reply_idstringОбязательно
    ID ответа.

Возвращает

Объект ответа ассистента.

Ошибки

  • В аккаунте X ключа нет ответа с этим ID.
GET/v1/assistant/replies/:reply_id
curl \
  https://gemlead.ai/api/v1/assistant/replies/rpl_7Hq2LmX9vR4tKp8WzN3cYd6FbJ1sGa5E \
  -H "Authorization: Bearer $GEMLEAD_API_KEY"
Ответ200
{
  "id": "rpl_7Hq2LmX9vR4tKp8WzN3cYd6FbJ1sGa5E",
  "object": "assistant_reply",
  "status": "running",
  "chat_id": "Jc7Rk2WqNb",
  "message": null,
  "reply": null,
  "error": null,
  "created_at": "2026-11-06T09:14:02.000Z",
  "completed_at": null
}

Объект сообщения ассистента

Сообщение чата с Julien AI, ваше или его собственное.

Атрибуты

  • idstring
    Уникальный идентификатор сообщения.
  • objectstring
    Всегда assistant_message.
  • chat_idstring
    Чат, к которому оно относится.
  • rolestring
    user для ваших сообщений, assistant для сообщений Julien AI.
    userassistant
  • textstring
    Сообщение. У Julien AI это его ответ, а затем вопрос к вам, если он его задаёт.
  • created_atstring
    Время отправки сообщения, ISO 8601.
Объект сообщения ассистента
{
  "id": "Ra9Yh3KsDw",
  "object": "assistant_message",
  "chat_id": "Jc7Rk2WqNb",
  "role": "assistant",
  "text": "Tipsters, with 38 hot leads this week out of 412 scored. Most of them follow @bettingpros.\n\nShould I compare it with last week?",
  "created_at": "2026-11-06T09:14:09.000Z"
}

Список сообщений

GET/v1/assistant/messagesПраво read

Возвращает сообщения ваших чатов с Julien AI, созданных через API, ваши и его ответы, сначала новые.

Параметры запроса

  • chat_idstring
    Только сообщения этого чата. По умолчанию все чаты этого аккаунта X.
  • limitinteger
    Сколько объектов вернуть, от 1 до 100. По умолчанию 25.
  • cursorstring
    next_cursor предыдущей страницы, чтобы получить следующую. См. раздел Пагинация.

Возвращает

Список объектов сообщения ассистента.

Ошибки

  • Нет чата с этим ID, созданного через API с этим аккаунтом X. Для чатов самого приложения ответ такой же.
  • API не принимает значение параметра. Название параметра указано в param.
GET/v1/assistant/messages
curl -G https://gemlead.ai/api/v1/assistant/messages \
  -H "Authorization: Bearer $GEMLEAD_API_KEY" \
  -d chat_id=Jc7Rk2WqNb
Ответ200
{
  "object": "list",
  "data": [
    {
      "id": "Ra9Yh3KsDw",
      "object": "assistant_message",
      "chat_id": "Jc7Rk2WqNb",
      "role": "assistant",
      "text": "Tipsters, with 38 hot leads this week out of 412 scored. Most of them follow @bettingpros.\n\nShould I compare it with last week?",
      "created_at": "2026-11-06T09:14:09.000Z"
    },
    {
      "id": "Qm4xT8vLpZ",
      "object": "assistant_message",
      "chat_id": "Jc7Rk2WqNb",
      "role": "user",
      "text": "Which persona brought the most hot leads?",
      "created_at": "2026-11-06T09:14:02.000Z"
    }
  ],
  "has_more": false,
  "next_cursor": null
}

Объект чата ассистента

Чат с Julien AI, начатый через API.

Атрибуты

  • idstring
    Уникальный идентификатор чата, chat_id его сообщений.
  • objectstring
    Всегда assistant_chat.
  • titlestring
    Заголовок чата, который даётся так же, как в чатах приложения. New chat, пока заголовка нет.
  • created_atstring
    Время начала чата, ISO 8601.
  • last_message_atstring
    Время последнего сообщения, ISO 8601.
  • last_message_previewstring
    Начало его последнего сообщения.
Объект чата ассистента
{
  "id": "Jc7Rk2WqNb",
  "object": "assistant_chat",
  "title": "Hot leads this week",
  "created_at": "2026-11-06T09:14:02.000Z",
  "last_message_at": "2026-11-06T09:14:09.000Z",
  "last_message_preview": "Tipsters, with 38 hot leads this week out of 412 scored."
}

Список чатов

GET/v1/assistant/chatsПраво read

Возвращает ваши чаты с Julien AI, созданные через API с этим аккаунтом X, сначала недавно активные.

Параметры запроса

  • limitinteger
    Сколько объектов вернуть, от 1 до 100. По умолчанию 25.
  • cursorstring
    next_cursor предыдущей страницы, чтобы получить следующую. См. раздел Пагинация.

Возвращает

Список объектов чата ассистента.

Ошибки

  • API не принимает значение параметра. Название параметра указано в param.
GET/v1/assistant/chats
curl https://gemlead.ai/api/v1/assistant/chats \
  -H "Authorization: Bearer $GEMLEAD_API_KEY"
Ответ200
{
  "object": "list",
  "data": [
    {
      "id": "Jc7Rk2WqNb",
      "object": "assistant_chat",
      "title": "Hot leads this week",
      "created_at": "2026-11-06T09:14:02.000Z",
      "last_message_at": "2026-11-06T09:14:09.000Z",
      "last_message_preview": "Tipsters, with 38 hot leads this week out of 412 scored."
    }
  ],
  "has_more": false,
  "next_cursor": null
}