Knowledge
Get a knowledge collection by id
ApiKeyAuthAuthorization<token>collectionId*stringuuidThe knowledge collection
application/json- response
data*curl -X GET 'https://dev.dixa.io/beta/knowledge/collections/{collectionId}' \ -H 'Authorization: <API token>'Get collection catalog, including all categories and articles
ApiKeyAuthAuthorization<token>collectionId*stringuuidlanguage?stringLanguage in which the article translations will be returned. If not provided, the default language will be used.
The knowledge collection catalog
application/json- response
data*curl -X GET 'https://dev.dixa.io/beta/knowledge/collections/{collectionId}/catalog' \ -H 'Authorization: <API token>'Get a knowledge category by id
ApiKeyAuthAuthorization<token>categoryId*stringuuidlanguage?stringLanguage in which the article translations will be returned. If not provided, the default language will be used.
The category
application/json- response
data*curl -X GET 'https://dev.dixa.io/beta/knowledge/categories/{categoryId}' \ -H 'Authorization: <API token>'Get the knowledge category translations
ApiKeyAuthAuthorization<token>categoryId*stringuuidThe category translations
application/json- response
data*curl -X GET 'https://dev.dixa.io/beta/knowledge/categories/{categoryId}/translations' \ -H 'Authorization: <API token>'Get a knowledge article by id
ApiKeyAuthAuthorization<token>articleId*stringuuidlanguage?stringLanguage in which the article translations will be returned. If not provided, the default language will be used.
The knowledge article
application/json- response
data*curl -X GET 'https://dev.dixa.io/beta/knowledge/articles/{articleId}' \ -H 'Authorization: <API token>'Delete a knowledge article
ApiKeyAuth knowledge.content:wAuthorization<token>Scope: knowledge.content:w
articleId*stringuuidcurl -X DELETE 'https://dev.dixa.io/beta/knowledge/articles/{articleId}' \ -H 'Authorization: <API token>'Empty
Update a knowledge article
ApiKeyAuth knowledge.content:wAuthorization<token>Scope: knowledge.content:w
articleId*stringuuidThe knowledge article fields to update
application/json- body
ownedBy?stringID of the user who owns the article
tags?Tags to add or remove
preRelease?booleanWhether the article is only available in pre-release mode
The updated knowledge article
application/json- response
data*The updated article
curl -X PATCH 'https://dev.dixa.io/beta/knowledge/articles/{articleId}' \ -H 'Authorization: <API token>' \ -H 'Content-Type: application/json' \ -d '{ "ownedBy": "123e4567-e89b-12d3-a456-426614174000", "tags": { "add": [ "tag-id-1" ] }, "preRelease": false}'Get a knowledge article translations
ApiKeyAuthAuthorization<token>articleId*stringuuidThe article translations
application/json- response
data*curl -X GET 'https://dev.dixa.io/beta/knowledge/articles/{articleId}/translations' \ -H 'Authorization: <API token>'Update translations for a knowledge article. Supports partial success.
ApiKeyAuth knowledge.content:wAuthorization<token>Scope: knowledge.content:w
articleId*stringuuidThe translations to update for the article
application/json- body
translations?array<>List of translations to create or update
The updated translations, with partial errors if any
application/json- response
data?array<>Successfully upserted translations
partialErrors?array<>Errors for translations that failed
curl -X PATCH 'https://dev.dixa.io/beta/knowledge/articles/{articleId}/translations' \ -H 'Authorization: <API token>' \ -H 'Content-Type: application/json' \ -d '{ "translations": [ { "languageId": "en", "title": "My Article", "content": "<p>Hello world</p>" } ]}'Create a knowledge article
ApiKeyAuth knowledge.content:wAuthorization<token>Scope: knowledge.content:w
The knowledge article to create
application/json- body
translations?array<>Initial translations for the article
parentId?stringID of the parent category
tags?array<string>List of tag IDs to assign to the article
preRelease?booleanWhether the article is only available in pre-release mode
The created knowledge article
application/json- response
data*The created article
curl -X POST 'https://dev.dixa.io/beta/knowledge/articles' \ -H 'Authorization: <API token>' \ -H 'Content-Type: application/json' \ -d '{ "translations": [ { "languageId": "en", "title": "My Article", "content": "<p>Content</p>" } ], "parentId": "123e4567-e89b-12d3-a456-426614174000", "tags": [ "f6020a03-5a7a-4d9e-81e6-f1b76a855a5e" ], "preRelease": false}'Create a knowledge category. Every category belongs to a collection: pass a collection ID as parentId to create a top-level category, or a category ID to create a subcategory
ApiKeyAuth knowledge.content:wAuthorization<token>Scope: knowledge.content:w
The knowledge category to create
application/json- body
translations?array<>Initial translations for the category
parentId*stringID of the parent. Use a collection ID to create a top-level category, or a category ID to create a subcategory
The created knowledge category
application/json- response
data*The created category
curl -X POST 'https://dev.dixa.io/beta/knowledge/categories' \ -H 'Authorization: <API token>' \ -H 'Content-Type: application/json' \ -d '{ "translations": [ { "languageId": "en", "title": "Getting Started" } ], "parentId": "78dfb531-2e1e-4ffc-bd18-fdad68cd2419"}'Paginated list knowledge collections
ApiKeyAuthAuthorization<token>pageLimit?integerMaximum number of results per page. May be used in combination with pageKey to change the number of results in between page requests.
int32pageKey?stringBase64 encoded form of pagination query parameters. Do not try to construct or change programmatically as the internal structure may change without notice.
A list of knowledge collections
application/json- response
data?array<>curl -X GET 'https://dev.dixa.io/beta/knowledge/collections' \ -H 'Authorization: <API token>'Create a knowledge collection
ApiKeyAuth knowledge.collections:wAuthorization<token>Scope: knowledge.collections:w
The knowledge collection to create
application/json- body
title*stringTitle of the collection
description?stringDescription of the collection
internalKbEnabled?booleanWhether the collection is available to browse in the internal knowledge base. Defaults to true
The created knowledge collection
application/json- response
data*The created collection
curl -X POST 'https://dev.dixa.io/beta/knowledge/collections' \ -H 'Authorization: <API token>' \ -H 'Content-Type: application/json' \ -d '{ "title": "Test Collection", "description": "This is a test collection", "internalKbEnabled": true}'Publish a specific translation for search
ApiKeyAuth knowledge.content:wAuthorization<token>Scope: knowledge.content:w
articleId*stringuuidlanguageId*stringcurl -X POST 'https://dev.dixa.io/beta/knowledge/articles/{articleId}/translations/{languageId}/publish' \ -H 'Authorization: <API token>'Empty
Mark a specific translation as unpublished
ApiKeyAuth knowledge.content:wAuthorization<token>Scope: knowledge.content:w
articleId*stringuuidlanguageId*stringcurl -X POST 'https://dev.dixa.io/beta/knowledge/articles/{articleId}/translations/{languageId}/unpublish' \ -H 'Authorization: <API token>'Empty
Delete all versions of a knowledge article translation
ApiKeyAuth knowledge.content:wAuthorization<token>Scope: knowledge.content:w
articleId*stringuuidlanguageId*stringcurl -X DELETE 'https://dev.dixa.io/beta/knowledge/articles/{articleId}/translations/{languageId}' \ -H 'Authorization: <API token>'Empty
Publish a new version of all translations for a knowledge article
ApiKeyAuth knowledge.content:wAuthorization<token>Scope: knowledge.content:w
articleId*stringuuidcurl -X POST 'https://dev.dixa.io/beta/knowledge/articles/{articleId}/publish' \ -H 'Authorization: <API token>'Empty
Remove all translations of a knowledge article from search
ApiKeyAuth knowledge.content:wAuthorization<token>Scope: knowledge.content:w
articleId*stringuuidcurl -X POST 'https://dev.dixa.io/beta/knowledge/articles/{articleId}/unpublish' \ -H 'Authorization: <API token>'Empty
Move a knowledge article to a new parent
ApiKeyAuth knowledge.content:wAuthorization<token>Scope: knowledge.content:w
articleId*stringuuidparentId*stringuuidcurl -X PATCH 'https://dev.dixa.io/beta/knowledge/articles/{articleId}/parent/{parentId}' \ -H 'Authorization: <API token>'Empty
Remove a parent from a knowledge article
ApiKeyAuth knowledge.content:wAuthorization<token>Scope: knowledge.content:w
articleId*stringuuidcurl -X DELETE 'https://dev.dixa.io/beta/knowledge/articles/{articleId}/parent' \ -H 'Authorization: <API token>'Empty
Upload one or more image files to be used as attachments in knowledge articles. Supported formats: image/png, image/jpeg, image/gif, image/webp. Maximum 5 files per request, 4 MB per file, with a total request payload limit of 10 MB. Supports partial success.
ApiKeyAuth knowledge.content:wAuthorization<token>Scope: knowledge.content:w
multipart/form-data- body
files?array<unknown>One or more image files to upload as article attachments. Each part must be a supported image format.
The uploaded attachments, with partial errors if any
application/json- response
data?array<>Successfully uploaded attachments
partialErrors?array<>Errors for attachments that failed
curl -X POST 'https://dev.dixa.io/beta/knowledge/articles/attachments' \ -H 'Authorization: <API token>'