PeopleAggregator API: method peopleaggregator.getBoardMessages

Arguments | Return value | REST (XML) example | REST (JSON) example | XML-RPC example

Method: peopleaggregator.getBoardMessages

Retrieve a forum topic, or a list of forum topics in a group.

Arguments (see also Authentication)

If calling by XML-RPC, note that this method takes a single struct as input, with the following keys:

authToken

Type: string
An authentication token for the user reading the messages (leave blank for anonymous - allowed for some topics).
Example: as9d867f234o7asdf:928734982734987234:298374982734987234
Default:

context

Type: string
ID of group for which to read the topic list, or ID of topic to retrieve messages
Example: group:123

page

Type: int
The page you want to receive.
Example: 1
Minimum: 1
Default: 1

resultsPerPage

Type: int
The number of messages you want to receive per page.
Example: 100
Minimum: 10
Maximum: 100
Default: 100

Return value (see also Exceptions)

Type: hash

Attributes:

success

Type: boolean
true on success, false on failure
Example: True

page

Type: int
The current result page.
Example: 1

totalMessages

Type: int
The total number of messages available.
Example: 234

totalPages

Type: int
The total number of pages available.
Example: 3

resultsPerPage

Type: int
The max number of messages shown per page.
Example: 100

messages

Type: array

Content of each item:

item

Type: hash

Attributes:

id

Type: string
ID of the message
Example: group:123:msg:456

title

Type: string
Title of the topic or message
Example: Hello world

content

Type: string
Main body of the topic or message
Example: This could be several lines long, but it's not.

created

Type: string
When the message was created
Example: (FIXME: some sort of standard date value?)

author

Type: hash

Attributes:

id

Type: string
Author's user ID, or empty for an anonymous post
Example: user:26

name

Type: string
Author's user name
Example: myelin

Example REST (XML) request

Request

Response

HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: 916

<response>
 <success>true</success>
 <messages>
  <item>
   <content>This could be several lines long, but it's not.</content>
   <author>
    <id>user:26</id>
    <name>myelin</name>
   </author>
   <created>(FIXME: some sort of standard date value?)</created>
   <id>group:123:msg:456</id>
   <title>Hello world</title>
  </item>
 </messages>
 <resultsPerPage>100</resultsPerPage>
 <totalPages>3</totalPages>
 <page>1</page>
 <totalMessages>234</totalMessages>
</response>

Example REST (JSON) request

Request

Response

HTTP/1.1 200 OK
Content-Type: application/x-javascript
Content-Length: 323

{"success": true, "messages": [{"content": "This could be several lines long, but it's not.", "author": {"id": "user:26", "name": "myelin"}, "created": "(FIXME: some sort of standard date value?)", "id": "group:123:msg:456", "title": "Hello world"}], "resultsPerPage": 100, "totalPages": 3, "page": 1, "totalMessages": 234}

Example XML-RPC call

Request

POST /api/xmlrpc HTTP/1.1
Content-Type: text/xml
Content-Length: 1572

<?xml version='1.0'?>
 <methodCall>
  <methodName>peopleaggregator.getBoardMessages</methodName>
  <params>
   <param>
    <value><struct>
     <member>
      <name>authToken</name>
      <value><string>as9d867f234o7asdf:928734982734987234:298374982734987234</string></value>
     </member>
     <member>
      <name>resultsPerPage</name>
      <value><int>100</int></value>
     </member>
     <member>
      <name>page</name>
      <value><int>1</int></value>
     </member>
     <member>
      <name>context</name>
      <value><string>group:123</string></value>
     </member>
    </struct></value>
   </param>
  </params>
 </methodCall>
 

Response

HTTP/1.1 200 OK
Content-Type: text/xml
Content-Length: 4840

<?xml version='1.0'?>
 <methodResponse>
  <params>
   <param>
    <value><struct>
     <member>
      <name>success</name>
      <value><boolean>1</boolean></value>
     </member>
     <member>
      <name>messages</name>
      <value><array><data>
       <value><struct>
        <member>
         <name>content</name>
         <value><string>This could be several lines long, but it's not.</string></value>
        </member>
        <member>
         <name>author</name>
         <value><struct>
          <member>
           <name>id</name>
           <value><string>user:26</string></value>
          </member>
          <member>
           <name>name</name>
           <value><string>myelin</string></value>
          </member>
         </struct></value>
        </member>
        <member>
         <name>created</name>
         <value><string>(FIXME: some sort of standard date value?)</string></value>
        </member>
        <member>
         <name>id</name>
         <value><string>group:123:msg:456</string></value>
        </member>
        <member>
         <name>title</name>
         <value><string>Hello world</string></value>
        </member>
       </struct></value>
      </data></array></value>
     </member>
     <member>
      <name>resultsPerPage</name>
      <value><int>100</int></value>
     </member>
     <member>
      <name>totalPages</name>
      <value><int>3</int></value>
     </member>
     <member>
      <name>page</name>
      <value><int>1</int></value>
     </member>
     <member>
      <name>totalMessages</name>
      <value><int>234</int></value>
     </member>
    </struct></value>
   </param>
  </params>
 </methodResponse>