<?xml version="1.0" encoding="UTF-8" ?>
    <prefix>
      <prefix>forums</prefix>
      <describeURL>/direct/forums/describe</describeURL>
      <summary>Provides a set of RESTful endpoints for retrieving single fora, site collections of fora , individual topics (collections of conversations) and messages with their children. An example workflow would be to call the site action with /direct/forums/site/SITEID.json for the top level fora in a site, then to use /direct/forums/site/SITEID/forum/FORUMID.json to get an individual forum to the topic level. After that you would use /direct/forums/site/SITEID/forum/FORUMID/topic/TOPICID.json to get a topic, basicallya set of conversations, then you would call /direct/forums/site/SITEID/forum/FORUMID/topic/TOPICID/message/MESSAGEID.json to get a fully populated message with attachments and children.</summary>
      <customActions>
        <customAction>
          <action>site</action>
          <url>/direct/forums/site</url>
          <method>GET</method>
          <viewKey>list</viewKey>
          <description>(GET) Retrieves fora, topics and conversations for a given site id. <br /><br />Get all fora for a site:<br /> /direct/forums/site/SITEID.json<br /> <br />Get all topics for a forum:<br /> /direct/forums/site/SITEID/forum/FORUMID.json<br /><br /> Get all conversations for a topic:<br /> /direct/forums/site/SITEID/forum/FORUMID/topic/TOPICID.json <br /><br />Get a fully populated conversation or message. This retrieves the message tree from the specified message downwards. If the MESSAGEID is the top level message in a conversation, the entire conversation is returned.<br /> /direct/forums/site/SITEID/forum/FORUMID/topic/TOPICID/message/MESSAGEID.json</description>
        </customAction>
      </customActions>
      <customActions>
        <customAction>
          <action>messages</action>
          <url>/direct/forums/messages</url>
          <method>GET</method>
          <viewKey>list</viewKey>
        </customAction>
      </customActions>
      <outputFormats>
        <format>json</format>
        <format>xml</format>
       </outputFormats>
      <inputFormats>
       </inputFormats>
      <capabilities>
        <capability>
          <name>EntityProvider</name>
          <type>org.sakaiproject.entitybroker.entityprovider.EntityProvider</type>
        </capability>
        <capability>
          <name>ActionsExecutable</name>
          <type>org.sakaiproject.entitybroker.entityprovider.capabilities.ActionsExecutable</type>
        </capability>
        <capability>
          <name>AutoRegisterEntityProvider</name>
          <type>org.sakaiproject.entitybroker.entityprovider.capabilities.AutoRegisterEntityProvider</type>
        </capability>
        <capability>
          <name>Describeable</name>
          <type>org.sakaiproject.entitybroker.entityprovider.capabilities.Describeable</type>
        </capability>
        <capability>
          <name>Outputable</name>
          <type>org.sakaiproject.entitybroker.entityprovider.capabilities.Outputable</type>
        </capability>
      </capabilities>
    </prefix>
