This section describes REST Services of internal APIs which applications of Knowledge use to communicate with the server. There are the following applications:

* [Forum application|#KSref.InternalAPIs.ForumApplication]
* [Answers application|#KSref.InternalAPIs.AnswersApplication]
* [Polls application|#KSref.InternalAPIs.PollsApplication]

{docbook}
<para xml:id="KSref.InternalAPIs.ForumApplication">
<citetitle>
<emphasis role="bold">
Forum application
</emphasis>
</citetitle>
</para>
{docbook}

The Forum application of Knowledge uses the ForumWebservice to provide all APIs to work with Forum, such as filtering IPs, viewing RSS, and more.

|| Service name || Service URL || Description || Location ||
| *ForumWebservice* | $portalName/ $restcontextname/ ks/forum/ | Call extended services of the Forum application. | Maven groupId: org.exoplatform.ks {example}{example} ArtifactId: exo.ks.web.webservice |

* *APIs Usage*

Use the following APIs to build all the functions of the Forum application:

|| Name || Description || Service URL endpoint || Parameters ||	Expected values ||
| *getMessage* | Get all new posts with the number based on the _maxcount_ value. | $portalName/ $restcontextname/ ks/forum/getmessage/ | String maxcount | integer |
| *filterIps* | Ban IPs with no access to Forum. | $portalName/ $restcontextname/ ks/forum/filter/ | String str | String in the IP format.|
| *filterIpBanForum* | Ban IPs with no access to a specific Forum. | $portalName/ $restcontextname/ ks/forum/ filterIpBanforum/| String forumId  {example}{example} String str | string in the IP format, string in the Forum format |
| *filterTagNameForum* | Do the quick search for tags that returns the list of tags. | $portalName/ $restcontextname/ ks/forum/ filterTagNameForum/ | String str  {example}{example}  String userAndTopicId | Tag name  {example}{example}  id of user and topic |
| *viewrss* | Process the request by users when they want to view RSS. | $portalName/ $restcontextname/ ks/forum/rss/ | String resourceid |category id  {example}{example} forum id  {example}{example} topic id |
| *userrss* | Process the request by users when they want to view their own collected RSS. | $portalName /$restcontextname/ ks/forum/rss/user/ | String resourceid | username id |


{docbook}
<para xml:id="KSref.InternalAPIs.AnswersApplication">
<citetitle>
<emphasis role="bold">
Answers application
</emphasis>
</citetitle>
</para>
{docbook}

The Answers application of Knowledge uses the FAQWebservice to view RSS.

|| Service name || Service URL || Description || Location ||
| *FAQWebservice* | $portalName/ $restcontextname/ ks/faq | Call the extended services of the Answers application. | Maven groupId: org.exoplatform.ks {example}{example} ArtifactId: exo.ks.eXoApplication. faq.service |

* *APIs Usage*

Use the following APIs to build all the functions of Answers application:

|| Name || Description || Service URL endpoint || Parameters ||	Expected values ||
| *viewrss* | View RSS | $portalName/ $restcontextname/ ks/faq/rss/| String resourceid | category id, question id |


{docbook}
<para xml:id="KSref.InternalAPIs.PollsApplication">
<citetitle>
<emphasis role="bold">
Polls application
</emphasis>
</citetitle>
</para>
{docbook}

The Polls application of Knowledge uses the PollWebservice to create and interact with the Polls gadget.

|| Service name || Service URL || Description || Location ||
| *PollWebservice* | $portalName/ $restcontextname/ private/ks/poll | Call extended services of the Polls application. | Maven groupId: org.exoplatform.ks {example}{example} ArtifactId: exo.ks.eXoApplication. poll.service |


* *APIs Usage*

Use the following APIs to build all functions of the Answers application:
|| Name || Description || Service URL endpoint || Parameters ||	Expected values ||
| *viewPoll* | Return data of the Polls system | $portalName/ $restcontextname/ private/ks/poll/ viewpoll/| String pollId | id of poll |
| *votePoll* | Update data for the Polls with the returned id | $portalName/ $restcontextname/ private/ks/poll /votepoll/| String pollId  {example}{example} String indexVote | id of poll  {example}{example} integer |

{docbook}
<para>
<prompt>
   <emphasis role="bold">See also</emphasis>
</prompt>
</para>
{docbook}
* [Extension points|#KSref.DeveloperReference.ExtensionPoints]
* [Wiki Service API|#KSref.DeveloperReference.WikiService]
* [FAQ Template Configuration|#KSref.DeveloperReference.FAQTemplateConfiguration]
* [Actions over a wiki page from external jars|#KSref.DeveloperReference.Extend_actions_over_a_wiki_page_from_external_jars]
* [JCR structure|#KSref.JCRStructure]