Makaleler Bilgi Tabanınızın yapı taşlarıdır. AI Temsilcinizin soruları yanıtlarken kullandığı içeriği oluşturun, listeleyin, güncelleyin ve silin.
Makaleler AI Temsilcinizin Bilgi Tabanının yapı taşlarıdır. Her makale bir bilgi parçasını temsil eder: yardım sayfası, SSS girdisi, ürün açıklaması veya AI’ınızın bilmesi gereken herhangi bir içerik.
Üç makale türü vardır: Makaleler (başlık ve gövdeden oluşan tam belgeler), Paragraflar (kısa, bağımsız metin girdileri) ve URL makaleleri (web içeriği aktarılırken otomatik oluşturulur). Makaleleri API ile manuel oluşturabilir, Dış içerik içe aktarma ile web sitelerinden aktarabilir, Dosya yükleme ile dosya yükleyebilir veya Intercom’dan eşitleyebilirsiniz.
Yeniden eğitim adımı yoktur. Oluşturduğunuz, güncellediğiniz veya sildiğiniz her makale arka planda otomatik işlenir ve tamamlanır tamamlanmaz, genellikle saniyeler içinde geçerli olur. Aşağıdaki embed_state alanıyla veya Bilgi Tabanı ayarlarını alma işlemindeki pending_embed_count ile izleyin.
İsteğe bağlı örnek kontrolleri
Section titled “İsteğe bağlı örnek kontrolleri”-
Bir API Eylemi isteğini önizleyin. Verilen istek şablonunu göndermeden sentetik örnek değerlerle oluşturun. Kimlik bilgisi içeren üstbilgileri eklemeyin.
-
JSONPath eşleşmelerini önizleyin. Kök, alan, dizi indeksi ve joker karakter yollarını sağlanan JSON’a göre kontrol edin. Bu araç bir Eylem çalıştırmaz veya konuşma belleğini kaydetmez.
Makale oluşturma
Section titled “Makale oluşturma”POST https://app.quickchat.ai/v1/api/knowledge_base/articles/
İstek gövdesi
| Parametre | Açıklama |
|---|---|
content dize, zorunlu | Makale içeriği |
type dize | "Article" (varsayılan) veya "Paragraph" |
title dize | Makale başlığı |
"Article": Başlığı ve içeriği olan tam Bilgi Tabanı belgesi. SSS girdileri, yardım makaleleri ve ürün açıklamaları için kullanın."Paragraph": Başlığı olmayan kısa, bağımsız metin girdisi. Kısa bilgiler, tek satırlık yanıtlar ve hızlı başvuru verileri için kullanın."URL"(salt okunur): Web sitesinden içerik aktarılırken otomatik oluşturulur. Taranan sayfanın içeriğini kaynak URL ile içerir. Oluşturma sırasında ayarlanamaz.
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"}'import requests
response = requests.post( url="https://app.quickchat.ai/v1/api/knowledge_base/articles/", headers={"Authorization": "Bearer <API_TOKEN>"}, json={ "content": "Our return policy allows returns within 30 days.", "title": "Return Policy", },)data = response.json()Yanıt 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}| Alan | Açıklama |
|---|---|
id tamsayı | Makalenin sayısal kimliği. Tüm URL yollarında kullanılan esas tanımlayıcıdır |
article_id dize | Eski dize tanımlayıcısı. Boş olabilir; bunun yerine id kullanın |
type dize | "Article", "Paragraph" veya "URL" |
title dize | Makale başlığı |
description dize | Makale açıklaması |
content dize | Makale içeriği |
deploy_state dize | "draft" veya "published"; yalnızca bir etikettir (aşağıdaki nota bakın) |
embed_state dize veya null | Makalenin yayında olup olmadığı: "pending", "embedding", "embedded" veya "failed" (aşağıdaki nota bakın) |
state dize | Dahili işleme durumu (aşağıdaki nota bakın) |
refresh_failure_reason dize | Son URL yenilemesinin başarısız olma nedeni. Sınıflandırılmış yenileme hatası saklanmamışsa boştur |
version tamsayı veya null | Geçerli sürüm numarası |
max_available_version tamsayı veya null | Kullanılabilir en yüksek sürüm |
url dize veya null | Kaynak URL (URL türündeki makaleler için) |
tags dize dizisi | İlişkili etiketler |
created_timestamp dize | Oluşturma tarihi |
last_modified_timestamp dize | Son değiştirilme tarihi |
downloaded_timestamp dize | İndirme tarihi |
last_updated_timestamp dize | Son güncelleme tarihi |
last_updated_from_external_source_timestamp dize veya null | Son harici kaynak güncellemesi |
Makalelerin üç durum alanı vardır. Bunlardan yalnızca biri AI Temsilcinizin makaleyi kullanıp kullanmadığını belirtir:
embed_state: Önemli olan alan budur."pending"ve"embedding"makalenin hâlâ işlendiğini;"embedded"yayında olduğunu ve AI Temsilcinizin kullandığını;"failed"işlemenin tamamlanmadığını ve makalenin kullanılmadığını belirtir. Yazma işleminden sonra sorgulamanız gereken alan budur.deploy_state:"draft"veya"published". Yalnızca kendi düzeniniz için bir etikettir; AI’ın makaleyi kullanıp kullanmadığını etkilemez.state: Dahili içerik alma durumu. Çoğu API kullanıcısı yok sayabilir. URL makalesinde"refresh_failed", son yenilemenin kayıtlı içeriği değiştirmediği anlamına gelir.refresh_failure_reason: Sınıflandırılmış URL yenileme hatasının sabit kategorisi:"http_error","soft_404","off_domain_redirect","auth_wall","error_page","empty_content"veya"thin_content". Tarama, Quickchat sayfayı sınıflandıramadan başarısız olmuşsa boş olabilir.embed_statede başarısız olmadıkça son kayıtlı içerik yayında kalır.
Makaleleri listeleme
Section titled “Makaleleri listeleme”GET https://app.quickchat.ai/v1/api/knowledge_base/articles/
Sorgu parametreleri
| Parametre | Açıklama |
|---|---|
limit tamsayı | Sayfa başına öğe sayısı |
offset tamsayı | Atlanacak öğeler |
types dize | Türe göre filtre: Article, Paragraph, URL |
tags dize | Etikete göre filtre |
url dize | URL’ye göre filtre |
title dize | Başlığa göre filtre |
query dize | İçeriğe göre arama |
curl 'https://app.quickchat.ai/v1/api/knowledge_base/articles/?limit=10&offset=0' \ -H 'Authorization: Bearer <API_TOKEN>'import requests
response = requests.get( url="https://app.quickchat.ai/v1/api/knowledge_base/articles/", headers={"Authorization": "Bearer <API_TOKEN>"}, params={"limit": 10, "offset": 0},)data = response.json()Yanıt 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}Liste yanıtı content alanını içermez. Belirli bir makalenin tam içeriğini almak için Makale alma işlemini kullanın.
Makale alma
Section titled “Makale alma”GET https://app.quickchat.ai/v1/api/knowledge_base/articles/{article_id}
curl https://app.quickchat.ai/v1/api/knowledge_base/articles/1234 \ -H 'Authorization: Bearer <API_TOKEN>'import requests
response = requests.get( url="https://app.quickchat.ai/v1/api/knowledge_base/articles/1234", headers={"Authorization": "Bearer <API_TOKEN>"},)data = response.json()Yanıt 200 OK: content alanı dahil tam makale nesnesini döndürür (Makale oluşturma yanıtıyla aynı şema).
Makale güncelleme
Section titled “Makale güncelleme”PATCH https://app.quickchat.ai/v1/api/knowledge_base/articles/{article_id}
İstek gövdesi
| Parametre | Açıklama |
|---|---|
content dize | Güncellenmiş makale içeriği |
title dize | Güncellenmiş başlık |
tags dize dizisi | Güncellenmiş etiketler |
save_mode dize | "draft" (varsayılan) veya "publish" |
save_mode: "draft" seçeneği yalnızca deploy_state bayrağını ayarlar; içeriği AI’dan saklamaz. Taslak makale, yayınlanmış makale gibi işlenir ve kullanılır. İçeriği hazırlık aşamasında tutmak için buna güvenmeyin; yalnızca yayına hazır olduğunuzda makale yazın.
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"}'import requests
response = requests.patch( url="https://app.quickchat.ai/v1/api/knowledge_base/articles/1234", headers={"Authorization": "Bearer <API_TOKEN>"}, json={ "title": "Updated Return Policy", "content": "Returns accepted within 60 days.", "save_mode": "publish", },)data = response.json()Yanıt 200 OK: güncellenmiş makale nesnesini döndürür.
Makaleleri silme
Section titled “Makaleleri silme”Bir veya daha fazla makaleyi kimliğine göre silin.
Kapsam: write_allDELETE https://app.quickchat.ai/v1/api/knowledge_base/articles/
İstek gövdesi: makale kimliklerinin JSON dizisi.
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]'import requests
response = requests.delete( url="https://app.quickchat.ai/v1/api/knowledge_base/articles/", headers={"Authorization": "Bearer <API_TOKEN>"}, json=[1234, 5678],)Yanıt 200 OK
Makale arama
Section titled “Makale arama”Metin eşleştirmeyle makale içeriklerinde arama yapın.
Kapsam: read_allGET https://app.quickchat.ai/v1/api/knowledge_base/articles/search
Sorgu parametreleri
| Parametre | Açıklama |
|---|---|
query dize, zorunlu | Arama sorgusu |
is_case_insensitive mantıksal değer | Büyük/küçük harfe duyarsız arama (varsayılan: true) |
with_title_url_and_tags mantıksal değer | Başlık/URL/etiketleri aramaya dahil eder (varsayılan: true) |
strict_search mantıksal değer | Tam eşleşme gerektirir (varsayılan: false) |
num_of_display_articles tamsayı | Gösterilecek makale sayısı (varsayılan: 5) |
num_of_data_articles tamsayı | Aranacak makale sayısı (varsayılan: 15) |
curl 'https://app.quickchat.ai/v1/api/knowledge_base/articles/search?query=return%20policy' \ -H 'Authorization: Bearer <API_TOKEN>'import requests
response = requests.get( url="https://app.quickchat.ai/v1/api/knowledge_base/articles/search", headers={"Authorization": "Bearer <API_TOKEN>"}, params={"query": "return policy"},)data = response.json()Yanıt 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 }}Paragrafları listeleme
Section titled “Paragrafları listeleme”Paragraf türündeki tüm makaleleri listeleyin. Paragraflar, başlık ve içerik gövdesi olan tam Makalelerden farklı olarak başlığı olmayan kısa, bağımsız metin girdileridir.
Kapsam: read_allGET https://app.quickchat.ai/v1/api/knowledge_base/articles/paragraphs
Sorgu parametreleri
| Parametre | Açıklama |
|---|---|
limit tamsayı | Sayfa başına öğe sayısı |
offset tamsayı | Atlanacak öğeler |
query dize | İçeriğe göre filtre |
curl 'https://app.quickchat.ai/v1/api/knowledge_base/articles/paragraphs?limit=10' \ -H 'Authorization: Bearer <API_TOKEN>'import requests
response = requests.get( url="https://app.quickchat.ai/v1/api/knowledge_base/articles/paragraphs", headers={"Authorization": "Bearer <API_TOKEN>"}, params={"limit": 10},)data = response.json()Yanıt 200 OK
{ "items": [ { "id": 1, "content": "Our return policy allows returns within 30 days." } ], "offset": 0, "count": 1}