Knowledge articles
/api/v1/kb/articles — PUT
Section titled “/api/v1/kb/articles — PUT”PUT/api/v1/kb/articles
Writes knowledge content such as FAQs, returns and shipping. HTML is converted to plain text; content longer than 1500 characters is split into id-1, id-2… chunks. Ids starting with ek- are reserved for entries added by hand in the console: the API cannot write them and a full sync keeps them.
- Authentication:
Authorization: Bearer rz_live_… - Scope:
ingest:kb - Plan feature: none (available on every plan)
- Idempotency-Key: optional (recommended for retries)
Parameters
Section titled “Parameters”| Name | In | Type | Limits | Meaning |
|---|---|---|---|---|
full | query | boolean | default false | true: records missing from the list are deactivated (ek- hand-added knowledge rows are kept). Send the full list in one request (≤1000). |
Request body (application/json)
Section titled “Request body (application/json)”Fields marked * are required. Unknown fields are rejected with 422.
ArticleBatch
| Field | Type | Limits | Meaning |
|---|---|---|---|
items * | ApiArticle[] | min items 1, max items 1000 | 1–1000 records. |
ApiArticle
| Field | Type | Limits | Meaning |
|---|---|---|---|
id * | string | min 1, max 200 | Permanent id (ek- prefix is reserved). |
baslik * | string | min 1, max 500 | Title or question. |
icerik * | string | min 1, max 100000 | Content (may be HTML). |
bolum | string | null | max 2000 | Section. |
url | string | null | max 2000 | Source page. |
Example
Section titled “Example”curl -s -X PUT "$RZ_API/api/v1/kb/articles?full=true" \ -H "Authorization: Bearer $RZ_KEY" -H "Content-Type: application/json" \ -d '{"items": [{"id": "iade-kosullari", "baslik": "İade koşulları", "bolum": "Yardım", "icerik": "Ürünü teslim aldıktan sonra 14 gün içinde iade edebilirsiniz.", "url": "https://magaza.example.com/iade"}]}'Response 200
Section titled “Response 200”Schema: IngestResult
| Field | Type | Limits | Meaning |
|---|---|---|---|
dataset * | string | ||
inserted * | integer | ||
updated * | integer | ||
unchanged * | integer | ||
deactivated * | integer | ||
skipped * | integer |
{ "dataset": "bilgi", "inserted": 1, "updated": 0, "unchanged": 0, "deactivated": 0, "skipped": 0}Error statuses: 401, 403, 404, 413, 422, 429 — see Errors and limits.
© 2026 Erusoft