Перейти до вмісту

Статті складають вашу Базу знань. Створюйте, переглядайте, оновлюйте й видаляйте вміст, який AI-агент використовує для відповідей.

Статті є основою Бази знань AI-агента. Кожна стаття містить окрему частину знань: сторінку довідки, відповідь на часте запитання, опис продукту або інший вміст, який має знати AI.

Існує три типи: Статті (повні документи із заголовком і текстом), Абзаци (короткі окремі текстові записи) і URL-статті (створюються автоматично під час імпорту вебвмісту). Статті можна створювати вручну через API, імпортувати із сайтів через Імпорт зовнішнього вмісту, завантажувати через Завантаження файлів або синхронізувати з Intercom.

Повторне навчання не потрібне. Кожна створена, оновлена чи видалена стаття автоматично обробляється у фоні, а зміни набувають чинності після завершення, зазвичай за кілька секунд. Відстежуйте стан через поле embed_state нижче або pending_embed_count у налаштуваннях Бази знань.

Необов’язкові перевірки прикладів

Section titled “Необов’язкові перевірки прикладів”
  • Попередній перегляд запиту дії API. Побудуйте запит із наданого шаблону й синтетичних тестових значень без надсилання. Не додавайте заголовки з обліковими даними.

  • Попередній перегляд збігів JSONPath. Перевірте шляхи до кореня, полів, індексів масиву та шляхи з підстановкою за наданим JSON. Дія не виконується, пам’ять розмови не зберігається.

Область доступу: write_all

POST https://app.quickchat.ai/v1/api/knowledge_base/articles/

Тіло запиту

ПараметрОпис
content
string, обов’язковий
Вміст статті
type
string
"Article" (за замовчуванням) або "Paragraph"
title
string
Заголовок статті
  • "Article": повний документ Бази знань із заголовком і вмістом. Використовуйте для частих запитань, довідкових статей, описів продуктів.
  • "Paragraph": короткий окремий текст без заголовка. Використовуйте для стислих фактів, відповідей одним реченням, довідкових даних.
  • "URL" (лише читання): створюється автоматично під час імпорту вмісту із сайту. Містить отриманий текст сторінки та вихідний URL. Не можна вказати під час створення.
Terminal window
curl -X POST https://app.quickchat.ai/v1/api/knowledge_base/articles/ \
-H 'Authorization: Bearer <API_TOKEN>' \
-H 'Content-Type: application/json' \
-d '{
"content": "Our return policy allows returns within 30 days.",
"title": "Return Policy"
}'

Відповідь 201 Created

{
"id": 1234,
"article_id": "abc-123",
"type": "Article",
"title": "Return Policy",
"description": "",
"content": "Our return policy allows returns within 30 days.",
"state": "draft",
"deploy_state": "draft",
"embed_state": "pending",
"refresh_failure_reason": "",
"version": null,
"max_available_version": null,
"url": null,
"tags": [],
"created_timestamp": "2026-01-15",
"last_modified_timestamp": "2026-01-15",
"downloaded_timestamp": "2026-01-15",
"last_updated_timestamp": "2026-01-15",
"last_updated_from_external_source_timestamp": null
}
ПолеОпис
id
integer
Числовий ID статті. Це основний ідентифікатор для всіх URL-шляхів
article_id
string
Застарілий рядковий ідентифікатор. Може бути порожнім; використовуйте id
type
string
"Article", "Paragraph" або "URL"
title
string
Заголовок статті
description
string
Опис статті
content
string
Вміст статті
deploy_state
string
"draft" або "published": лише мітка (див. примітку нижче)
embed_state
string or null
Чи використовується стаття: "pending", "embedding", "embedded" або "failed" (див. примітку нижче)
state
string
Внутрішній статус обробки (див. примітку нижче)
refresh_failure_reason
string
Причина помилки останнього оновлення URL. Порожнє, якщо класифікованої причини не збережено
version
integer or null
Номер поточної версії
max_available_version
integer or null
Найвища доступна версія
url
string or null
Вихідний URL (для URL-статей)
tags
array of strings
Пов’язані теги
created_timestamp
string
Дата створення
last_modified_timestamp
string
Дата останньої зміни
downloaded_timestamp
string
Дата завантаження
last_updated_timestamp
string
Дата останнього оновлення
last_updated_from_external_source_timestamp
string or null
Останнє оновлення із зовнішнього джерела

Статті мають три поля стану. Лише одне з них показує, чи використовує статтю AI-агент:

  • embed_state: основне поле. "pending" і "embedding" означають, що обробка ще триває; "embedded" означає, що стаття доступна й AI-агент її використовує; "failed" означає, що обробка не завершилася й стаття не використовується. Опитуйте це поле після запису.
  • deploy_state: "draft" або "published". Лише мітка для вашої організації, яка не впливає на використання статті AI.
  • state: внутрішній статус отримання вмісту. Більшість користувачів API можуть його ігнорувати. Для URL-статті "refresh_failed" означає, що останнє оновлення не замінило збережений вміст.
  • refresh_failure_reason: стабільна категорія класифікованої помилки оновлення URL: "http_error", "soft_404", "off_domain_redirect", "auth_wall", "error_page", "empty_content" або "thin_content". Може бути порожнім, якщо збій стався до класифікації сторінки Quickchat. Останній збережений вміст залишається доступним, якщо embed_state також не вказує на помилку.
Область доступу: read_all

GET https://app.quickchat.ai/v1/api/knowledge_base/articles/

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

ПараметрОпис
limit
integer
Кількість елементів на сторінці
offset
integer
Кількість елементів, які слід пропустити
types
string
Фільтр за типом: Article, Paragraph, URL
tags
string
Фільтр за тегом
url
string
Фільтр за URL
title
string
Фільтр за заголовком
query
string
Пошук за вмістом
Terminal window
curl 'https://app.quickchat.ai/v1/api/knowledge_base/articles/?limit=10&offset=0' \
-H 'Authorization: Bearer <API_TOKEN>'

Відповідь 200 OK

{
"items": [
{
"id": 1234,
"article_id": "abc-123",
"type": "Article",
"title": "Return Policy",
"description": "",
"state": "published",
"deploy_state": "published",
"embed_state": "embedded",
"refresh_failure_reason": "",
"version": 1,
"max_available_version": 1,
"url": null,
"tags": ["policies"],
"created_timestamp": "2026-01-15",
"last_modified_timestamp": "2026-01-15",
"downloaded_timestamp": "2026-01-15",
"last_updated_timestamp": "2026-01-15",
"last_updated_from_external_source_timestamp": null
}
],
"offset": 0,
"limit": 10,
"count": 1
}

Відповідь зі списком не містить поля content. Використовуйте Отримання статті, щоб отримати повний вміст конкретної статті.

Область доступу: read_all

GET https://app.quickchat.ai/v1/api/knowledge_base/articles/{article_id}

Terminal window
curl https://app.quickchat.ai/v1/api/knowledge_base/articles/1234 \
-H 'Authorization: Bearer <API_TOKEN>'

Відповідь 200 OK: повертає повний об’єкт статті (та сама схема, що у відповіді Створення статті), зокрема поле content.

Область доступу: write_all

PATCH https://app.quickchat.ai/v1/api/knowledge_base/articles/{article_id}

Тіло запиту

ПараметрОпис
content
string
Оновлений вміст статті
title
string
Оновлений заголовок
tags
array of strings
Оновлені теги
save_mode
string
"draft" (за замовчуванням) або "publish"

Параметр save_mode: "draft" лише задає прапорець deploy_state, він не приховує вміст від AI. Чернетка обробляється й використовується так само, як опублікована стаття. Не покладайтеся на цей параметр для підготовки матеріалів: записуйте статтю лише тоді, коли готові надати її AI.

Terminal window
curl -X PATCH https://app.quickchat.ai/v1/api/knowledge_base/articles/1234 \
-H 'Authorization: Bearer <API_TOKEN>' \
-H 'Content-Type: application/json' \
-d '{
"title": "Updated Return Policy",
"content": "Returns accepted within 60 days.",
"save_mode": "publish"
}'

Відповідь 200 OK: повертає оновлений об’єкт статті.

Видаліть одну або кілька статей за ID.

Область доступу: write_all

DELETE https://app.quickchat.ai/v1/api/knowledge_base/articles/

Тіло запиту: JSON-масив ID статей.

Terminal window
curl -X DELETE https://app.quickchat.ai/v1/api/knowledge_base/articles/ \
-H 'Authorization: Bearer <API_TOKEN>' \
-H 'Content-Type: application/json' \
-d '[1234, 5678]'

Відповідь 200 OK

Пошук текстових збігів у вмісті статей.

Область доступу: read_all

GET https://app.quickchat.ai/v1/api/knowledge_base/articles/search

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

ПараметрОпис
query
string, обов’язковий
Пошуковий запит
is_case_insensitive
boolean
Пошук без урахування регістру (за замовчуванням: true)
with_title_url_and_tags
boolean
Включати заголовок, URL і теги до пошуку (за замовчуванням: true)
strict_search
boolean
Вимагати точний збіг (за замовчуванням: false)
num_of_display_articles
integer
Кількість статей для показу (за замовчуванням: 5)
num_of_data_articles
integer
Кількість статей для пошуку (за замовчуванням: 15)
Terminal window
curl 'https://app.quickchat.ai/v1/api/knowledge_base/articles/search?query=return%20policy' \
-H 'Authorization: Bearer <API_TOKEN>'

Відповідь 200 OK

{
"article_snippets": [
{
"article_id": 1234,
"expository_sentence": "Our return policy allows returns within 30 days.",
"query_words_ids": [
{"start_char": 4, "end_char": 10, "text": "return"}
]
}
],
"article_snapshots": {
"items": [],
"offset": 0,
"count": 1
}
}

Отримайте всі статті типу Paragraph. Абзаци є короткими окремими текстами без заголовка, на відміну від повних статей із заголовком і текстом.

Область доступу: read_all

GET https://app.quickchat.ai/v1/api/knowledge_base/articles/paragraphs

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

ПараметрОпис
limit
integer
Кількість елементів на сторінці
offset
integer
Кількість елементів, які слід пропустити
query
string
Фільтр за вмістом
Terminal window
curl 'https://app.quickchat.ai/v1/api/knowledge_base/articles/paragraphs?limit=10' \
-H 'Authorization: Bearer <API_TOKEN>'

Відповідь 200 OK

{
"items": [
{
"id": 1,
"content": "Our return policy allows returns within 30 days."
}
],
"offset": 0,
"count": 1
}