KnowledgeBase_CustomPage
You need the Manage custom pages permission to manage custom pages.
Custom Pages
- Custom Pages Manage
GET kb/customPages
GET kb/customPages/{id}
POST kb/customPages
PUT kb/customPages/{id}
DELETE kb/customPages/{id}
Model
KnowledgeBase_CustomPage JSON Format
KnowledgeBase_CustomPage is represented as simple flat JSON objects with the following keys:
Name | Type | Description |
---|---|---|
id |
guid | Id of the custom page. |
title |
string | Title of the custom page. |
kbId |
guid | Id of the knowledage base. |
status |
string | Allowed values are "draft", "published". |
customUrl |
string | Custom url of the article. |
body |
string | Content of the custom page. You can pass both plaintext and base64 encode text. If the request containing plaintext is blocked by comm100 WAF, use base64 format. When using base64, add "data:text/plain;base64," before the content. |
modifiedTime |
timestamp | Time when the custom page was last modified. |
createdTime |
datetime | Time when the custom page was created. |
Endpoint
Get the list of Custom Pages
GET kb/customPages
Parameters:
Name | Type | In | Required | Description |
---|---|---|---|---|
keywords |
string | query | no | Search keywords. |
status |
string | query | no | Allowed values are "draft", "published". |
kbId |
guid | query | no | Id of the knowledage base. |
Response:
An array of KnowledgeBase_CustomPage
Example
Sample Request:
curl https://api11.comm100.io/v4/kb/customPages \
-X
'GET'
\
-H
'Authorization: Bearer {access_token}'
\
Response:
HTTP/1.1 200 OK
Get a single KnowledgeBase_CustomPage
GET kb/customPages/{id}
Example
Sample Request:
curl https://api11.comm100.io/v4/kb/customPages/87a9aac0-1f99-eb11-a80f-00155d081c1b \
-X
'GET'
\
-H
'Authorization: Bearer {access_token}'
\
Response:
HTTP/1.1 200 OK
Create a new KnowledgeBase_CustomPage
POST kb/customPages
Parameters:
Name | Type | In | Required | Description |
---|---|---|---|---|
title |
string | body | yes | Title of the custom page. |
kbId |
guid | body | yes | Id of the knowledage base. |
status |
string | body | yes | Allowed values are "draft", "published". |
customUrl |
string | body | no | Custom url of the article. |
body |
string | body | no | Content of the custom page. You can pass both plaintext and base64 encode text. If the request containing plaintext is blocked by comm100 WAF, use base64 format. When using base64, add "data:text/plain;base64," before the content. |
Response:
Example
Sample Request:
curl https://api11.comm100.io/v4/kb/customPages \
-X
'POST'
\
-H
'Authorization: Bearer {access_token}'
\
-H
'Content-Type: application/json'
\
-D
'{"title":"Sample Custom Page","kbId":"b2754e68-b380-4a61-9c5b-a9570f1a4fcc","status":"draft","customUrl":"sample-custom-page","body":"<!DOCTYPE html>\n?<html>\n?<head>\n? <title>{{title}}</title>\n? <meta charset=\"UTF-8\" />\n? <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge,chrome=1\" />\n? <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n? <script type=\"text/javascript\" src=\"/kb/resources/js/jquery-1.10.2.min.js\"></script>\n? <script type=\"text/javascript\" src=\"/kb/resources/js/common.js?v=gbrqhch3oj0lob1m2w\"></script>\n? <link href=\"{{cssUrl}}\" rel=\"stylesheet\" type=\"text/css\" />\n? <link rel=\"canonical\" href=\"{{url}}\" />\n?</head>\n?<body>\n? <div class=\"header\">\n? <div class=\"container\">\n? <div class=\"header_logo\"><img src=\"/kb/resources/your_logo.png\" /></div>\n? <div class=\"header__title\"><span>Find answers in our Knowledge Base</span></div>\n? <div class=\"header__search\">\n? <input type=\"text\" class=\"search-input header__searchinput\" placeholder=\"Enter your question...\" autocomplete=\"off\" />\n? <i class=\"iconfont icon-search\"></i>\n? </div>\n? </div>\n? </div>\n? <div class=\"content\">\n? <div class=\"container\">\n? <div class=\"breadcrumbs\">\n? {{breadcrumbs}}\n? </div>\n? <div class=\"category-list\">\n? {% for category in categories %}\n? <div class=\"category-list__item\">\n? <div class=\"category-list__item__header\" onclick=\"showHide();\">\n? <i class=\"iconfont icon-folder\"></i>\n? <div class=\"category-list__item__name\"><a href=\"{{category.url}}\">{{category.name}}</a></div>\n? <i class=\"iconfont icon-fold\"></i>\n? </div>\n? <div class=\"category-list__item__content collapse\">\n? <div class=\"article-list\" id=\"{{category.id}}\">\n? {% for article in articles %}\n? {% if category.id == article.category_id %}\n? <div class=\"article-list__title\">\n? {% if article.if_featured %}\n? <i class=\"iconfont icon-feature\"></i>\n? {% endif %}\n? <a href=\"{{article.url}}\">{{article.title}}</a>\n? </div>\n? {% endif %}\n? {% endfor %}\n? </div>\n? </div>\n? </div>\n? {% endfor %}\n? </div>\n? </div>\n? </div>\n?</body>\n?</html>"}'
Response:
HTTP/1.1 201 Created
Update the KnowledgeBase_CustomPage
PUT kb/customPages/{id}
Parameters:
Name | Type | In | Required | Description |
---|---|---|---|---|
title |
string | body | yes | Title of the custom page. |
kbId |
guid | body | yes | Id of the knowledage base. |
status |
string | body | yes | Allowed values are "draft", "published". |
customUrl |
string | body | no | Custom url of the article. |
body |
string | body | no | Content of the custom page. You can pass both plaintext and base64 encode text. If the request containing plaintext is blocked by comm100 WAF, use base64 format. When using base64, add "data:text/plain;base64," before the content. |
Response:
Example
Sample Request:
curl https://api11.comm100.io/v4/kb/customPages/87a9aac0-1f99-eb11-a80f-00155d081c1b \
-X
'PUT'
\
-H
'Authorization: Bearer {access_token}'
\
-H
'Content-Type: application/json'
\
-D
'{"title":"Sample Custom Page","kbId":"b2754e68-b380-4a61-9c5b-a9570f1a4fcc","status":"draft","customUrl":"sample-custom-page","body":"<!DOCTYPE html>\n?<html>\n?<head>\n? <title>{{title}}</title>\n? <meta charset=\"UTF-8\" />\n? <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge,chrome=1\" />\n? <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n? <script type=\"text/javascript\" src=\"/kb/resources/js/jquery-1.10.2.min.js\"></script>\n? <script type=\"text/javascript\" src=\"/kb/resources/js/common.js?v=gbrqhch3oj0lob1m2w\"></script>\n? <link href=\"{{cssUrl}}\" rel=\"stylesheet\" type=\"text/css\" />\n? <link rel=\"canonical\" href=\"{{url}}\" />\n?</head>\n?<body>\n? <div class=\"header\">\n? <div class=\"container\">\n? <div class=\"header_logo\"><img src=\"/kb/resources/your_logo.png\" /></div>\n? <div class=\"header__title\"><span>Find answers in our Knowledge Base</span></div>\n? <div class=\"header__search\">\n? <input type=\"text\" class=\"search-input header__searchinput\" placeholder=\"Enter your question...\" autocomplete=\"off\" />\n? <i class=\"iconfont icon-search\"></i>\n? </div>\n? </div>\n? </div>\n? <div class=\"content\">\n? <div class=\"container\">\n? <div class=\"breadcrumbs\">\n? {{breadcrumbs}}\n? </div>\n? <div class=\"category-list\">\n? {% for category in categories %}\n? <div class=\"category-list__item\">\n? <div class=\"category-list__item__header\" onclick=\"showHide();\">\n? <i class=\"iconfont icon-folder\"></i>\n? <div class=\"category-list__item__name\"><a href=\"{{category.url}}\">{{category.name}}</a></div>\n? <i class=\"iconfont icon-fold\"></i>\n? </div>\n? <div class=\"category-list__item__content collapse\">\n? <div class=\"article-list\" id=\"{{category.id}}\">\n? {% for article in articles %}\n? {% if category.id == article.category_id %}\n? <div class=\"article-list__title\">\n? {% if article.if_featured %}\n? <i class=\"iconfont icon-feature\"></i>\n? {% endif %}\n? <a href=\"{{article.url}}\">{{article.title}}</a>\n? </div>\n? {% endif %}\n? {% endfor %}\n? </div>\n? </div>\n? </div>\n? {% endfor %}\n? </div>\n? </div>\n? </div>\n?</body>\n?</html>"}'
Response:
HTTP/1.1 200 OK
Remove the KnowledgeBase_CustomPage
DELETE kb/customPages/{id}
Parameters:
No Parameters
Response:
No Content
Example
Sample Request:
curl https://api11.comm100.io/v4/kb/customPages/87a9aac0-1f99-eb11-a80f-00155d081c1b \
-X
'DELETE'
\
-H
'Authorization: Bearer {access_token}'
\
Response:
HTTP/1.1 204 No Content