CMS Tool API

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

NameTypeExampleNotes
idint123Filter results by id.
pageint123Filter results by page.
keywordstextexampleFilter results by keywords.
titletextexampleFilter results by title.
tagstextexampleFilter results by tags.
publicContentOnlybooleantrueFilter results by public content only. Accepts true or 1.
offsetint123Skip this many matching records before returning results.
pageSizeint123Limit the number of records returned.

POST

Create or update an article from JSON.

Request content type: application/json

Request body fields

NameTypeExampleNotes
idint123Set the id value.
pageint123Set the page value.
info_titletextexampleSet the info title value.
info_fulltexttextexampleSet the info fulltext value.
info_summarytextexampleSet the info summary value.
info_tagstextexampleSet the info tags value.
info_showbooleantrueSet the info show value. Accepts true or 1.
info_imgtextexampleSet the info img value.
info_more_imagestextexampleSet 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

NameTypeExampleNotes
datatext{"id":123}Set the data value.
primaryImagetextexampleSet the primary image value.
additionalImagestextexampleSet the additional images value.

data contains the article JSON; primaryImage accepts one file; additionalImages may be repeated.

Data definitions

FieldTypeDescriptionFormatExample
info_objecttextAdditional object for a blog, usually this is used for video embed scripts.
info_titletextTitle of this blog / article
info_timestamptimestampThe timestamp when this blog was created or last updated2025-12-31 23:59:59
info_showcharSingle char field, default = Y if the page is visible, or N otherwise
info_hideuntiltextHide story until this date
info_blog_comments_onboolBoolean if comments are to be enabled on this blog
info_authoridintInteger ID links to a member record that represents the author of this document. If used, the authors name is public
info_comment_countintInteger count of how many comments have been made about this blog
info_imgtextImage URI pathname usually prefixed /images/
info_img_jsonjsonMeta data about the image, how bit if is, filesize
info_locationtextAddress in common postal format, eg 1 main st, Hamilton
info_filenametextSEO filename for this blog
info_enquiryformtextOptional HTML of a custom formatted enquiry form, to replace the default HTML form.
info_leadmagnet_followuptextLead magnet followup content
info_linkreltextLink rel setting for the info_url link
info_tagstextA comma separated list of tags or subjects that can be used to cross navigate between related blogs
info_duplicationidintOptional ID linked to another record from which this record was duplicated from
info_enquiry_configtextAdditional configuration information for an enquiry form if enabled.
info_summarytextA short paragraph summary of the blog
info_linktexttextLink text for the info_url link
info_idserialPrimary ID of the blog, integer, serial123456
info_emailtextIf an email address is specified here, then an enquiry form will be added at the bottom of this blog
pageintPage ID - Link to page data123456
info_leadmagnet_configtextLead magnet followup configuration settings
info_orderintInteger order for the blogs in a list, from 1 upwards
info_datetextThe official publish date of this story... Very important for news articles
info_urltextURL for a reference link, eg click the link for more information
info_fulltexttextThe full HTML content of the blog / article
info_metatitletextSEO 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.