CMS Tool API schema
Public API version 1.4.10.
Blog
Blog pages are usually presented as a list udner a primary page. Individual blog pages do not appear on the menu, only in lists. The blog engine also powers FAQ and gallery type pages
Endpoint URL
https://api.cms-tool.net/api/blog
/api/blog
Read and update articles.
GET
List articles, or retrieve one by appending its ID to the path.
Query parameters
| Name | Type | Example | Notes |
|---|---|---|---|
id | int | 123 | Filter results by id. |
page | int | 123 | Filter results by page. |
keywords | text | example | Filter results by keywords. |
title | text | example | Filter results by title. |
tags | text | example | Filter results by tags. |
publicContentOnly | boolean | true | Filter results by public content only. Accepts true or 1. |
offset | int | 123 | Skip this many matching records before returning results. |
pageSize | int | 123 | Limit the number of records returned. |
POST
Create or update an article from JSON.
Request content type: application/json
Request body fields
| Name | Type | Example | Notes |
|---|---|---|---|
id | int | 123 | Set the id value. |
page | int | 123 | Set the page value. |
info_title | text | example | Set the info title value. |
info_fulltext | text | example | Set the info fulltext value. |
info_summary | text | example | Set the info summary value. |
info_tags | text | example | Set the info tags value. |
info_show | boolean | true | Set the info show value. Accepts true or 1. |
info_img | text | example | Set the info img value. |
info_more_images | text | example | Set the info more images value. |
POST
Create or update an article and save its images in one multipart request.
Request content type: multipart/form-data
Request body fields
| Name | Type | Example | Notes |
|---|---|---|---|
data | text | {"id":123} | Set the data value. |
primaryImage | text | example | Set the primary image value. |
additionalImages | text | example | Set the additional images value. |
data contains the article JSON; primaryImage accepts one file; additionalImages may be repeated.
Data definitions
| Field | Type | Description | Format | Example |
|---|---|---|---|---|
info_object | text | Additional object for a blog, usually this is used for video embed scripts. | ||
info_title | text | Title of this blog / article | ||
info_timestamp | timestamp | The timestamp when this blog was created or last updated | 2025-12-31 23:59:59 | |
info_show | char | Single char field, default = Y if the page is visible, or N otherwise | ||
info_hideuntil | text | Hide story until this date | ||
info_blog_comments_on | bool | Boolean if comments are to be enabled on this blog | ||
info_authorid | int | Integer ID links to a member record that represents the author of this document. If used, the authors name is public | ||
info_comment_count | int | Integer count of how many comments have been made about this blog | ||
info_img | text | Image URI pathname usually prefixed /images/ | ||
info_img_json | json | Meta data about the image, how bit if is, filesize | ||
info_location | text | Address in common postal format, eg 1 main st, Hamilton | ||
info_filename | text | SEO filename for this blog | ||
info_enquiryform | text | Optional HTML of a custom formatted enquiry form, to replace the default HTML form. | ||
info_leadmagnet_followup | text | Lead magnet followup content | ||
info_linkrel | text | Link rel setting for the info_url link | ||
info_tags | text | A comma separated list of tags or subjects that can be used to cross navigate between related blogs | ||
info_duplicationid | int | Optional ID linked to another record from which this record was duplicated from | ||
info_enquiry_config | text | Additional configuration information for an enquiry form if enabled. | ||
info_summary | text | A short paragraph summary of the blog | ||
info_linktext | text | Link text for the info_url link | ||
info_id | serial | Primary ID of the blog, integer, serial | 123456 | |
info_email | text | If an email address is specified here, then an enquiry form will be added at the bottom of this blog | ||
page | int | Page ID - Link to page data | 123456 | |
info_leadmagnet_config | text | Lead magnet followup configuration settings | ||
info_order | int | Integer order for the blogs in a list, from 1 upwards | ||
info_date | text | The official publish date of this story... Very important for news articles | ||
info_url | text | URL for a reference link, eg click the link for more information | ||
info_fulltext | text | The full HTML content of the blog / article | ||
info_metatitle | text | SEO title for the blog |
Usage instructions and examples
GET a Blog / Info Page
Get a specific blog by blog id (aka info id)
GET /webapps/api/blog?id=99999
GET /webapps/api/blog/99999
SEARCH FOR Blogs
Returns an array of blog/info objects in data
Get all blogs on page 9999
GET /webapps/api/blog?page=9999
Get blogs matching a LIKE pattern
GET /webapps/api/blog?filename=/section/flying%pigs
GET /webapps/api/blog?keywords=
GET /webapps/api/blog?title=
GET /webapps/api/blog?tags=
INSERT / UPDATE a blog / info page
If an ID is provided, then the blog is updated. If an ID is not provided, then the blog is inserted.
POST /webapps/api/blog
submit the JSON data as per following format.
Example JSON to create a new blog
{
"info_title": "New Blog",
"info_summary": "Hello World",
"info_fulltext": "<p>Hello world</p>",
"page": 123123
}
Example JSON to update a blog
{
"id": 123123,
"info_title": "Updated Blog Title",
"info_summary": "Hello World Updated",
}
Sample object
{
"info_title": "Blog",
"info_timestamp": "2020-12-07 04:39:25.0",
"info_show": "Y",
"info_blog_comments_on": "f",
"info_category2": 0,
"info_category1": 0,
"site_search_keywords_updated": "2021-03-29 09:42:37.26478",
"site_search_keywords": "^hello ^blog ^awesome",
"info_blogcnt": 0,
"info_authorid": 0,
"info_category3": 0,
"info_re": 0,
"info_summary": "Hello NZ",
"info_groupid": 0,
"info_id": 1234,
"id": 12345,
"page": 111,
"info_order": 1,
"info_date": "2020-12-07",
"info_fulltext": "<p>Hello NZ!</p>",
"cid": 1111
}Machine-readable documentation
This documentation is also available as JSON or Markdown at the same URL. Request JSON with Accept: application/json or Markdown with Accept: text/markdown.