This document list the web services that Clearspace exposes via REST, or Representational State Transfer. This guide includes the following sections:
As with other REST-style web services, methods here are each in one of four forms, similar to database operations.
The method descriptions here give the method type (also known as the HTTP "verb,"), such as GET, PUT, POST, or DELETE. They also give the resource endpoint. The endpoint is merely the end of the resource URI, which begins with the URL of your Clearspace instance and includes the general address of REST web services in Clearspace. Taken together, the complete URI's form is what you should use when requesting resources. That form looks like this:
http://<host_name>:<port_number>/<context>/rpc/rest/<endpoint>
So if your domain was at example.com and you had code to find out if avatars were enabled, you might end up with a resource URI like the following:
http://example.com:8080/ourspace/rpc/rest/avatarService/isAvatarsEnabled
Here's a brief client example in Java for getting a Clearspace REST resource. REST services in Clearspace use basic authentication, so you'll need to pass in user credentials that have sufficient permission to get the resource you're requesting.
This example uses DOM4J and Apache's HttpClient, but there aren't any implementation restrictions on how you request the resource and manipulate XML parameter or return values.
import java.io.InputStream;
import org.apache.commons.httpclient.Credentials;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.UsernamePasswordCredentials;
import org.apache.commons.httpclient.auth.AuthScope;
import org.apache.commons.httpclient.methods.GetMethod;
import org.dom4j.Document;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.SAXReader;
import org.dom4j.io.XMLWriter;
// Code omitted.
// Use apache commons-httpclient to create the request/response
HttpClient client = new HttpClient();
Credentials defaultcreds = new UsernamePasswordCredentials("joe_admin",
"mypassword");
client.getState().setCredentials(AuthScope.ANY, defaultcreds);
// GET a community by its ID number, which is "1".
GetMethod method = new GetMethod(
"http://example.com:8080/clearspace/rpc/rest/communityService/communities/1");
client.executeMethod(method);
InputStream in = method.getResponseBodyAsStream();
// Use dom4j to parse the response and print nicely to the output stream
SAXReader reader = new SAXReader();
Document document = reader.read(in);
XMLWriter writer = new XMLWriter(System.out, OutputFormat
.createPrettyPrint());
writer.write(document);Note that to use any of the web services exposed by Clearspace, you'll need to first enable web services for your Clearspace instance. You can do that in the admin console at System > Settings > Web Services. On the Web Services page, enable the type of web services you want exposed by Clearspace, then click Save Settings.
| Service | Description |
|---|---|
| addressBookService | Provides ability to interact with the Private Message addressbook. |
| attachmentService | <p> A web service for managing attachment settings. |
| auditService | Provides a webservice for auditing actions from remote services. |
| avatarService | |
| blogService | A web service interface for managing blogs. |
| commentService | |
| communityService | Provides the ability to manipulate communities. |
| documentService | This service provides methods to load and manipulate documents, comments. |
| forumService | Provides the ability to manipulate forum messages. |
| groupService | Provides a the ability for managing groups and group membership. |
| iMService | Provides a the ability for managing real time comunication. |
| permissionService | Provides a webservice for managing permissions on users and groups. |
| pluginService | |
| pollService | |
| privateMessageService | Provides the ability to manipulate private messages. |
| profileFieldService | Defines methods used to create, access, update, and remove profile fields data. |
| profileSearchService | Provides the ability to search users. |
| profileService | Manages user profile data. |
| projectService | This service provides methods to load tasks by ID and to retrieve lists of projects. |
| ratingsService | |
| referenceService | Manager used to create references between different kind of jive objects. |
| searchService | Provides the ability to search for content. |
| socialGroupService | Provides a the ability for managing social groups and group membership. |
| statusLevelService | Manages status level feature. |
| systemPropertiesService | Provides a web service for managing Jive System Properties. |
| tagService | Provides a service to create, retrieve and delete tags. |
| taskService | |
| userService | Provides a webservice for managing user's, avatar's, and status levels. |
| watchService | A service for manipulating a user's watches on objects. |
| Method | Description |
|---|---|
| addUser | Adds a specified username to users addressbook. |
| addUsers | Adds a list of users to the Private Message addressbook of the specified user. |
| getRoster | Retrieves a list of users contained within the specified users addressbook. |
| removeUser | Removes the specified username from a users Private Message addressbook. |
| removeUsers | Removes the specified list of users from a users Private Message addressbook. |
POST http://domain:port/clearspace_context/rpc/rest/addressBookService/addressbooks
<addUser>
<userID>xs:long</userID>
<usernameToAdd>xs:string</usernameToAdd>
</addUser>POST http://domain:port/clearspace_context/rpc/rest/addressBookService/bulk
<addUsers>
<userID>xs:long</userID>
<!-- List of ... -->
<userIDsToAdd>xs:long</userIDsToAdd>
</addUsers>GET http://domain:port/clearspace_context/rpc/rest/addressBookService/addressbooks/{userID}
<getRoster>
<userID>xs:long</userID>
</getRoster><getRosterResponse>
<!-- List of ... -->
<return>
<!-- Contents of User -->
<return>
</getRosterResponse>DELETE http://domain:port/clearspace_context/rpc/rest/addressBookService/addressbooks/{userID}/{usernameToRemove}
<removeUser>
<userID>xs:long</userID>
<usernameToRemove>xs:string</usernameToRemove>
</removeUser>DELETE http://domain:port/clearspace_context/rpc/rest/addressBookService/bulk/{userID}/{userIDsToRemove}
<removeUsers>
<userID>xs:long</userID>
<!-- List of ... -->
<userIDsToRemove>xs:long</userIDsToRemove>
</removeUsers>A web service for managing attachment settings. A clone of the com.jivesoftware.community.AttachmentManager, modified for a web service.
There are three main properties that can administered with respect to attachments:
| Method | Description |
|---|---|
| addAllowedType | Adds a content type to the list of explicitly allowed types. |
| addDisallowedType | Adds a content type to the list of explicitly disallowed types. |
| getAllowedTypes | Returns a List of explicitly allowed types. |
| getDisallowedTypes | Returns a List of explicitly disallowed types. |
| getImagePreviewMaxSize | Returns the max dimension of generated thumbnails (ie, the max value for the width or height). |
| getMaxAttachmentSize | Returns the maximum size of an individual attachment in kilobytes. |
| getMaxAttachmentsPerBlogPost | Returns the maximum number of attachments per blog post. |
| getMaxAttachmentsPerDocument | Returns the maximum number of attachments per document. |
| getMaxAttachmentsPerMessage | Returns the maximum number of attachments per message. |
| isAllowAllByDefault | Returns true if in the "allow all content types by default" mode. |
| isAttachmentsEnabled | Returns true if attachments are enabled, false otherwise. |
| isImagePreviewEnabled | Returns true if image preview support is enabled. |
| isImagePreviewRatioEnabled | Returns true if the aspect ratio of thumbnails should be preserved. |
| isValidType | Returns true if the content type is valid based on the current settings of the <tt>allowAllByDefault</tt> flag and the allowed and disallowed types list. |
| removeAllowedType | Removes a content type fromt he list of explicitly allowed types. |
| removeDisallowedType | Removes a content type from the list of explicitly disallowed types. |
| setAllowAllByDefault | Sets the default allowed content types mode. |
| setAttachmentsEnabled | Sets whether attachments are attachmentsEnabled, false otherwise. |
| setImagePreviewEnabled | Toggles whether image preview support is enabled. |
| setImagePreviewMaxSize | Sets the max dimension of generated thumbnails (ie, the max value for the width or height). |
| setImagePreviewRatioEnabled | Toggles whether the aspect ratio of thumbnails should be preserved. |
| setMaxAttachmentSize | Sets the maximum size of an individual attachment in kilobytes. |
| setMaxAttachmentsPerBlogPost | Sets the maximum number of attachments per blog post. |
| setMaxAttachmentsPerDocument | Sets the maximum number of attachments per document. |
| setMaxAttachmentsPerMessage | Sets the maximum number of attachments per message. |
POST http://domain:port/clearspace_context/rpc/rest/attachmentService/allowedTypes
<addAllowedType>
<contentType>xs:string</contentType>
</addAllowedType>POST http://domain:port/clearspace_context/rpc/rest/attachmentService/disallowedTypes
<addDisallowedType>
<contentType>xs:string</contentType>
</addDisallowedType>GET http://domain:port/clearspace_context/rpc/rest/attachmentService/allowedTypes
<getAllowedTypesResponse>
<!-- List of ... -->
<return>xs:string</return>
</getAllowedTypesResponse>GET http://domain:port/clearspace_context/rpc/rest/attachmentService/disallowedTypes
<getDisallowedTypesResponse>
<!-- List of ... -->
<return>xs:string</return>
</getDisallowedTypesResponse>GET http://domain:port/clearspace_context/rpc/rest/attachmentService/imagePreviewMaxSize
<getImagePreviewMaxSizeResponse>
<return>xs:int</return>
</getImagePreviewMaxSizeResponse>GET http://domain:port/clearspace_context/rpc/rest/attachmentService/maxAttachmentSize
<getMaxAttachmentSizeResponse>
<return>xs:int</return>
</getMaxAttachmentSizeResponse>GET http://domain:port/clearspace_context/rpc/rest/attachmentService/maxAttachmentsPerBlogPost
<getMaxAttachmentsPerBlogPostResponse>
<return>xs:int</return>
</getMaxAttachmentsPerBlogPostResponse>GET http://domain:port/clearspace_context/rpc/rest/attachmentService/maxAttachmentsPerDoc
<getMaxAttachmentsPerDocumentResponse>
<return>xs:int</return>
</getMaxAttachmentsPerDocumentResponse>GET http://domain:port/clearspace_context/rpc/rest/attachmentService/maxAttachmentsPerMessage
<getMaxAttachmentsPerMessageResponse>
<return>xs:int</return>
</getMaxAttachmentsPerMessageResponse>GET http://domain:port/clearspace_context/rpc/rest/attachmentService/allowAllByDefault
<isAllowAllByDefaultResponse>
<return>xs:boolean</return>
</isAllowAllByDefaultResponse>GET http://domain:port/clearspace_context/rpc/rest/attachmentService/attachmentsEnabled
<isAttachmentsEnabledResponse>
<return>xs:boolean</return>
</isAttachmentsEnabledResponse>GET http://domain:port/clearspace_context/rpc/rest/attachmentService/imagePreviewEnabled
<isImagePreviewEnabledResponse>
<return>xs:boolean</return>
</isImagePreviewEnabledResponse>GET http://domain:port/clearspace_context/rpc/rest/attachmentService/imagePreviewRatioEnabled
<isImagePreviewRatioEnabledResponse>
<return>xs:boolean</return>
</isImagePreviewRatioEnabledResponse>GET http://domain:port/clearspace_context/rpc/rest/attachmentService/allowedTypes/{contentType}
<isValidType>
<contentType>xs:string</contentType>
</isValidType><isValidTypeResponse>
<return>xs:boolean</return>
</isValidTypeResponse>DELETE http://domain:port/clearspace_context/rpc/rest/attachmentService/allowedTypes/{contentType}
<removeAllowedType>
<contentType>xs:string</contentType>
</removeAllowedType>DELETE http://domain:port/clearspace_context/rpc/rest/attachmentService/disallowedTypes/{contentType}
<removeDisallowedType>
<contentType>xs:string</contentType>
</removeDisallowedType>POST http://domain:port/clearspace_context/rpc/rest/attachmentService/allowAllByDefault
<setAllowAllByDefault>
<allowAllByDefault>xs:boolean</allowAllByDefault>
</setAllowAllByDefault>POST http://domain:port/clearspace_context/rpc/rest/attachmentService/attachmentsEnabled
<setAttachmentsEnabled>
<attachmentsEnabled>xs:boolean</attachmentsEnabled>
</setAttachmentsEnabled>POST http://domain:port/clearspace_context/rpc/rest/attachmentService/imagePreviewEnabled
<setImagePreviewEnabled>
<imagePreviewEnabled>xs:boolean</imagePreviewEnabled>
</setImagePreviewEnabled>POST http://domain:port/clearspace_context/rpc/rest/attachmentService/imagePreviewMaxSize
<setImagePreviewMaxSize>
<imagePreviewMaxSize>xs:int</imagePreviewMaxSize>
</setImagePreviewMaxSize>POST http://domain:port/clearspace_context/rpc/rest/attachmentService/imagePreviewRatioEnabled
<setImagePreviewRatioEnabled>
<imagePreviewRatioEnabled>xs:boolean</imagePreviewRatioEnabled>
</setImagePreviewRatioEnabled>POST http://domain:port/clearspace_context/rpc/rest/attachmentService/maxAttachmentSize
<setMaxAttachmentSize>
<maxAttachmentSize>xs:int</maxAttachmentSize>
</setMaxAttachmentSize>POST http://domain:port/clearspace_context/rpc/rest/attachmentService/maxAttachmentsPerBlogPost
<setMaxAttachmentsPerBlogPost>
<maxAttachmentsPerBlogPost>xs:int</maxAttachmentsPerBlogPost>
</setMaxAttachmentsPerBlogPost>POST http://domain:port/clearspace_context/rpc/rest/attachmentService/maxAttachmentsPerDocument
<setMaxAttachmentsPerDocument>
<maxAttachmentsPerDocument>xs:int</maxAttachmentsPerDocument>
</setMaxAttachmentsPerDocument>POST http://domain:port/clearspace_context/rpc/rest/attachmentService/maxAttachmentsPerMessage
<setMaxAttachmentsPerMessage>
<maxAttachmentsPerMessage>xs:int</maxAttachmentsPerMessage>
</setMaxAttachmentsPerMessage>| Method | Description |
|---|---|
| auditEvent | Audits (logs) a remote event with formatted data passed from remote service. |
| getAuditMessages | Retrieves audit logs and returns them to remote caller. |
POST http://domain:port/clearspace_context/rpc/rest/auditService/audit
<auditEvent>
<username>xs:string</username>
<description>xs:string</description>
<details>xs:string</details>
</auditEvent>GET http://domain:port/clearspace_context/rpc/rest/auditService/audit
<getAuditMessagesResponse>
<!-- List of ... -->
<return>
<!-- Contents of AuditMessage -->
<return>
</getAuditMessagesResponse>| Method | Description |
|---|---|
| createAvatar | Creates a new avatar for a user allowing the user to specify byte array for the image. |
| deleteAvatar | Deletes an avatar from the system. |
| getActiveAvatar | Returns an avatar for a user, else the if the user does not have an active avatar specified. |
| getAvatar | Used to acquire an avatar by its id |
| getAvatarCount | Used to acquire a count of all the avatars for a specific user |
| getAvatars | Returns a collection of avatars for a user |
| getGlobalAvatars | Returns a collection of all of the global avatars |
| getMaxAllowableHeight | Returns the maximum allowable height for an avatar image |
| getMaxAllowableWidth | Returns the maximum allowable width for an avatar image |
| getMaxUserAvatars | Returns the maximum amount of avatars a user is allowed to have, -1 for limitless |
| getModerationAvatarCount | Used to acquire a count of all the avatars that require moderation. |
| getModerationAvatars | Returns a collection of all of the avatars that require moderation. |
| isAllowImageResize | Returns true if the system should attempt to resize images |
| isAvatarsEnabled | Returns true if the avatars feature is enabled, else false |
| isModerateUserAvatars | Returns whether or not user avatars will be moderated. |
| isUserAvatarsEnabled | Returns true if users can create their own avatars, false otherwise. |
| setActiveAvatar | Used to make a user use a global avatar, to set no active avatar pass -1 for the avatar value. |
| setAllowImageResize | Used to set whether the system should attempt to resize images |
| setMaxAllowableHeight | Sets the maximum allowable height for an avatar image |
| setMaxAllowableWidth | Sets the maximum allowable width for an avatar image |
| setMaxUserAvatars | Sets the maximum number of avatars a user can have |
| setModerateUserAvatars | Sets whether or not user avatars will be moderated. |
| setUserAvatarsEnabled | Sets whether or not users can create their own custom avatars. |
POST http://domain:port/clearspace_context/rpc/rest/avatarService/avatars
<createAvatar>
<ownerID>xs:long</ownerID>
<name>xs:string</name>
<contentType>xs:string</contentType>
<!-- List of ... -->
<data>xs:base64Binary</data>
</createAvatar><createAvatarResponse>
<return>
<!-- Contents of Avatar -->
<return>
</createAvatarResponse>DELETE http://domain:port/clearspace_context/rpc/rest/avatarService/avatar/{avatarID}
<deleteAvatar>
<avatarID>xs:long</avatarID>
</deleteAvatar>GET http://domain:port/clearspace_context/rpc/rest/avatarService/activeAvatar/{userID}
<getActiveAvatar>
<userID>xs:long</userID>
</getActiveAvatar><getActiveAvatarResponse>
<return>
<!-- Contents of Avatar -->
<return>
</getActiveAvatarResponse>GET http://domain:port/clearspace_context/rpc/rest/avatarService/avatarByID/{avatarID}
<getAvatar>
<avatarID>xs:long</avatarID>
</getAvatar><getAvatarResponse>
<return>
<!-- Contents of Avatar -->
<return>
</getAvatarResponse>GET http://domain:port/clearspace_context/rpc/rest/avatarService/avatarCount/{userID}
<getAvatarCount>
<userID>xs:long</userID>
</getAvatarCount><getAvatarCountResponse>
<return>xs:int</return>
</getAvatarCountResponse>GET http://domain:port/clearspace_context/rpc/rest/avatarService/avatarsByUser/{userID}
<getAvatars>
<userID>xs:long</userID>
</getAvatars><getAvatarsResponse>
<!-- List of ... -->
<return>
<!-- Contents of Avatar -->
<return>
</getAvatarsResponse>GET http://domain:port/clearspace_context/rpc/rest/avatarService/globalAvatars
<getGlobalAvatarsResponse>
<!-- List of ... -->
<return>
<!-- Contents of Avatar -->
<return>
</getGlobalAvatarsResponse>GET http://domain:port/clearspace_context/rpc/rest/avatarService/avatarMaxAllowableHeight
<getMaxAllowableHeightResponse>
<return>xs:int</return>
</getMaxAllowableHeightResponse>GET http://domain:port/clearspace_context/rpc/rest/avatarService/avatarMaxAllowableWidth
<getMaxAllowableWidthResponse>
<return>xs:int</return>
</getMaxAllowableWidthResponse>GET http://domain:port/clearspace_context/rpc/rest/avatarService/maxUserAvatars
<getMaxUserAvatarsResponse>
<return>xs:int</return>
</getMaxUserAvatarsResponse>GET http://domain:port/clearspace_context/rpc/rest/avatarService/moderationAvatarCount
<getModerationAvatarCountResponse>
<return>xs:int</return>
</getModerationAvatarCountResponse>GET http://domain:port/clearspace_context/rpc/rest/avatarService/moderationAvatars
<getModerationAvatarsResponse>
<!-- List of ... -->
<return>
<!-- Contents of Avatar -->
<return>
</getModerationAvatarsResponse>GET http://domain:port/clearspace_context/rpc/rest/avatarService/avatarAllowImageResize
<isAllowImageResizeResponse>
<return>xs:boolean</return>
</isAllowImageResizeResponse>GET http://domain:port/clearspace_context/rpc/rest/avatarService/avatarsEnabled
<isAvatarsEnabledResponse>
<return>xs:boolean</return>
</isAvatarsEnabledResponse>GET http://domain:port/clearspace_context/rpc/rest/avatarService/moderateUserAvatars
<isModerateUserAvatarsResponse>
<return>xs:boolean</return>
</isModerateUserAvatarsResponse>GET http://domain:port/clearspace_context/rpc/rest/avatarService/userAvatarsEnabled
<isUserAvatarsEnabledResponse>
<return>xs:boolean</return>
</isUserAvatarsEnabledResponse>POST http://domain:port/clearspace_context/rpc/rest/avatarService/activeAvatar
<setActiveAvatar>
<userID>xs:long</userID>
<avatarID>xs:long</avatarID>
</setActiveAvatar>POST http://domain:port/clearspace_context/rpc/rest/avatarService/avatarAllowImageResize
<setAllowImageResize>
<isAllowImageResize>xs:boolean</isAllowImageResize>
</setAllowImageResize>POST http://domain:port/clearspace_context/rpc/rest/avatarService/avatarMaxAllowableHeight
<setMaxAllowableHeight>
<height>xs:int</height>
</setMaxAllowableHeight>POST http://domain:port/clearspace_context/rpc/rest/avatarService/avatarMaxAllowableWidth
<setMaxAllowableWidth>
<width>xs:int</width>
</setMaxAllowableWidth>POST http://domain:port/clearspace_context/rpc/rest/avatarService/maxUserAvatars
<setMaxUserAvatars>
<max>xs:int</max>
</setMaxUserAvatars>POST http://domain:port/clearspace_context/rpc/rest/avatarService/moderateUserAvatars
<setModerateUserAvatars>
<moderateUserAvatars>xs:boolean</moderateUserAvatars>
</setModerateUserAvatars>POST http://domain:port/clearspace_context/rpc/rest/avatarService/userAvatarsEnabled
<setUserAvatarsEnabled>
<enableCustomAvatars>xs:boolean</enableCustomAvatars>
</setUserAvatarsEnabled>| Method | Description |
|---|---|
| addAttachmentToBlogPost | Adds an attachment to the blog post with the specified ID. |
| addImageToBlogPost | Adds an image to the blog post with the specified ID. |
| createBlog | Creates a new blog. |
| createBlogPost | Creates a new blog post. |
| deleteBlog | Permanently deletes a blog and all of the blog postings and comments associated with the blog. |
| deleteBlogPost | Permanently deletes a blog post and all of the comments associated with the it. |
| getAttachmentsByBlogPostID | Returns an array of attachments that are attached to the specified blog post. |
| getBlog | Returns a blog by blog blogName. |
| getBlog | Returns a blog by blog ID. |
| getBlogCount | Returns the total number of blogs on this system. |
| getBlogCount | Returns the total number of blogs on this system that match the criteria specified by the ResultFilter. |
| getBlogCountForUser | Returns the count of all blogs which are associated with the given user. |
| getBlogPost | Returns a blog by blog ID. |
| getBlogPostCount | Returns the number of blog posts on the system, by default only includes blog posts where status = and publish date less than now(). |
| getBlogPostCount | Returns the number of blog posts on the system. |
| getBlogPosts | Returns all the blog posts that match the criteria specified by the BlogPostResultFilter on the entire system. |
| getBlogsByDisplayName | Returns all the blogs on this system whose display name is LIKE the given query. |
| getBlogsForUser | Returns all blogs which are associated with the given user. |
| getCommentCount | Returns the number of comments on blog posts in the system. |
| getCommentCount | Returns the number of comments on blog posts that match the criteria specified by the FeedbackResultFilter in the entire system. |
| getComments | Returns all the comments on blog posts that match the criteria specified by the FeedbackResultFilter in the entire system. |
| getImagesByBlogPostID | Returns an array of images that are attached to the specified blog post. |
| getPingServices | Returns a comma delimited list of available ping services for the system. |
| getRecentBlogs | Returns (at most) the ten most recent blogs created on this system. |
| getTags | Returns all tags for blogs in the system. |
| getTags | Returns all tags for blogs in the system filtered by the BlogTagResultFilter. |
| isBlogsEnabled | Returns true if the blogs feature is turned on. |
| isCommentsEnabled | Returns true if the comments feature is turned on. |
| isPingsEnabled | Returns true if the pings feature is turned on. |
| isPingsOverrideEnabled | Returns true if the system has been configured to allow users to override the ping URIs configured for the system. |
| isTrackbacksEnabled | Returns true if the trackbacks feature is turned on. |
| publishBlogPost | |
| removeAttachment | Removes the attachment with the supplied id as an attachment of a blog. |
| setBlogsEnabled | Enables or disables the blogs feature. |
| setCommentsEnabled | Enables or disables the comments feature system wide. |
| setPingServices | Sets the comma delimited list of available ping services for the system. |
| setPingsEnabled | Enables or disables the pings feature system wide. |
| setPingsOverrideEnabled | Configures the system to allow users to override the ping URIs configured for all blogs. |
| setTrackbacksEnabled | Enables or disables the trackbacks feature system wide. |
| updateBlogPost | |
| uploadAttachmentToBlogPost | Uploads a new attachment to the blog post with the specified ID. |
| userHasBlogs | Returns <tt>true</tt> if the given user has one or more blogs, <tt>false</tt> if the user does not have a blog. |
POST http://domain:port/clearspace_context/rpc/rest/blogService/attachments
<addAttachmentToBlogPost>
<blogPostID>xs:long</blogPostID>
<name>xs:string</name>
<contentTypes>xs:string</contentTypes>
<!-- List of ... -->
<source>xs:base64Binary</source>
</addAttachmentToBlogPost>POST http://domain:port/clearspace_context/rpc/rest/blogService/images
<addImageToBlogPost>
<blogPostID>xs:long</blogPostID>
<name>xs:string</name>
<contentTypes>xs:string</contentTypes>
<!-- List of ... -->
<source>xs:base64Binary</source>
</addImageToBlogPost>POST http://domain:port/clearspace_context/rpc/rest/blogService/blogs
<createBlog>
<userID>xs:long</userID>
<blogName>xs:string</blogName>
<displayName>xs:string</displayName>
</createBlog><createBlogResponse>
<return>
<!-- Contents of Blog -->
<return>
</createBlogResponse>POST http://domain:port/clearspace_context/rpc/rest/blogService/blogPosts
<createBlogPost>
<subject>xs:string</subject>
<body>xs:string</body>
<blogID>xs:long</blogID>
<userID>xs:long</userID>
</createBlogPost><createBlogPostResponse>
<return>
<!-- Contents of BlogPost -->
<return>
</createBlogPostResponse>DELETE http://domain:port/clearspace_context/rpc/rest/blogService/blogs/{blogID}
<deleteBlog>
<blogID>xs:long</blogID>
</deleteBlog>DELETE http://domain:port/clearspace_context/rpc/rest/blogService/blogPosts/{blogPostID}
<deleteBlogPost>
<blogPostID>xs:long</blogPostID>
</deleteBlogPost>GET http://domain:port/clearspace_context/rpc/rest/blogService/attachments/{blogPostID}
<getAttachmentsByBlogPostID>
<blogPostID>xs:long</blogPostID>
</getAttachmentsByBlogPostID><getAttachmentsByBlogPostIDResponse>
<!-- List of ... -->
<return>
<!-- Contents of Attachment -->
<return>
</getAttachmentsByBlogPostIDResponse>GET http://domain:port/clearspace_context/rpc/rest/blogService/blogsByID/{blogID}
<getBlog>
<blogID>xs:long</blogID>
</getBlog><getBlogResponse>
<return>
<!-- Contents of Blog -->
<return>
</getBlogResponse>GET http://domain:port/clearspace_context/rpc/rest/blogService/blogsByName/{blogName}
<getBlog>
<blogName>xs:string</blogName>
</getBlog><getBlogResponse>
<return>
<!-- Contents of Blog -->
<return>
</getBlogResponse>GET http://domain:port/clearspace_context/rpc/rest/blogService/blogCount
<getBlogCountResponse>
<return>xs:int</return>
</getBlogCountResponse>POST http://domain:port/clearspace_context/rpc/rest/blogService/blogCount
<getBlogCount>
<filter>
<!-- Contents of BlogResultFilter -->
<filter>
</getBlogCount><getBlogCountResponse>
<!-- List of ... -->
<return>
<!-- Contents of Blog -->
<return>
</getBlogCountResponse>GET http://domain:port/clearspace_context/rpc/rest/blogService/userBlogCount/{userID}
<getBlogCountForUser>
<userID>xs:long</userID>
</getBlogCountForUser><getBlogCountForUserResponse>
<return>xs:int</return>
</getBlogCountForUserResponse>GET http://domain:port/clearspace_context/rpc/rest/blogService/blogPosts/{blogPostID}
<getBlogPost>
<blogPostID>xs:long</blogPostID>
</getBlogPost><getBlogPostResponse>
<return>
<!-- Contents of BlogPost -->
<return>
</getBlogPostResponse>GET http://domain:port/clearspace_context/rpc/rest/blogService/blogPostCount
<getBlogPostCountResponse>
<return>xs:int</return>
</getBlogPostCountResponse>POST http://domain:port/clearspace_context/rpc/rest/blogService/blogPostCount
<getBlogPostCount>
<filter>
<!-- Contents of BlogPostResultFilter -->
<filter>
</getBlogPostCount><getBlogPostCountResponse>
<return>xs:int</return>
</getBlogPostCountResponse>POST http://domain:port/clearspace_context/rpc/rest/blogService/blogsPostsWithFilter
<getBlogPosts>
<filter>
<!-- Contents of BlogPostResultFilter -->
<filter>
</getBlogPosts><getBlogPostsResponse>
<!-- List of ... -->
<return>
<!-- Contents of BlogPost -->
<return>
</getBlogPostsResponse>GET http://domain:port/clearspace_context/rpc/rest/blogService/blogsByDisplayName/{query}/{startIndex}/{endIndex}/{numResults}
<getBlogsByDisplayName>
<query>xs:string</query>
<startIndex>xs:int</startIndex>
<endIndex>xs:int</endIndex>
<numResults>xs:int</numResults>
</getBlogsByDisplayName><getBlogsByDisplayNameResponse>
<!-- List of ... -->
<return>
<!-- Contents of Blog -->
<return>
</getBlogsByDisplayNameResponse>GET http://domain:port/clearspace_context/rpc/rest/blogService/userBlogs/{userID}
<getBlogsForUser>
<userID>xs:long</userID>
</getBlogsForUser><getBlogsForUserResponse>
<!-- List of ... -->
<return>
<!-- Contents of Blog -->
<return>
</getBlogsForUserResponse>GET http://domain:port/clearspace_context/rpc/rest/blogService/commentCount
<getCommentCountResponse>
<return>xs:int</return>
</getCommentCountResponse>POST http://domain:port/clearspace_context/rpc/rest/blogService/commentCountWithFilter
<getCommentCount>
<filter>
<!-- Contents of FeedbackResultFilter -->
<filter>
</getCommentCount><getCommentCountResponse>
<return>xs:int</return>
</getCommentCountResponse>POST http://domain:port/clearspace_context/rpc/rest/blogService/commentsWithFilter
<getComments>
<filter>
<!-- Contents of FeedbackResultFilter -->
<filter>
</getComments><getCommentsResponse>
<!-- List of ... -->
<return>
<!-- Contents of Comment -->
<return>
</getCommentsResponse>GET http://domain:port/clearspace_context/rpc/rest/blogService/images/{blogPostID}
<getImagesByBlogPostID>
<blogPostID>xs:long</blogPostID>
</getImagesByBlogPostID><getImagesByBlogPostIDResponse>
<!-- List of ... -->
<return>
<!-- Contents of Image -->
<return>
</getImagesByBlogPostIDResponse>GET http://domain:port/clearspace_context/rpc/rest/blogService/pingServices
<getPingServicesResponse>
<return>xs:string</return>
</getPingServicesResponse>GET http://domain:port/clearspace_context/rpc/rest/blogService/recentBlogs
<getRecentBlogsResponse>
<!-- List of ... -->
<return>
<!-- Contents of Blog -->
<return>
</getRecentBlogsResponse>GET http://domain:port/clearspace_context/rpc/rest/blogService/tags
<getTagsResponse>
<!-- List of ... -->
<return>
<!-- Contents of TagCount -->
<return>
</getTagsResponse>POST http://domain:port/clearspace_context/rpc/rest/blogService/tags
<getTagsResponse>
<!-- List of ... -->
<return>
<!-- Contents of TagCount -->
<return>
</getTagsResponse>GET http://domain:port/clearspace_context/rpc/rest/blogService/blogsEnabled
<isBlogsEnabledResponse>
<return>xs:boolean</return>
</isBlogsEnabledResponse>GET http://domain:port/clearspace_context/rpc/rest/blogService/commentsEnabled
<isCommentsEnabledResponse>
<return>xs:boolean</return>
</isCommentsEnabledResponse>GET http://domain:port/clearspace_context/rpc/rest/blogService/pingsEnabled
<isPingsEnabledResponse>
<return>xs:boolean</return>
</isPingsEnabledResponse>GET http://domain:port/clearspace_context/rpc/rest/blogService/pingsOverrideEnabled
<isPingsOverrideEnabledResponse>
<return>xs:boolean</return>
</isPingsOverrideEnabledResponse>GET http://domain:port/clearspace_context/rpc/rest/blogService/trackbacksEnabled
<isTrackbacksEnabledResponse>
<return>xs:boolean</return>
</isTrackbacksEnabledResponse>POST http://domain:port/clearspace_context/rpc/rest/blogService/publishBlogPost
<publishBlogPost>
<subject>xs:string</subject>
<body>xs:string</body>
<blogID>xs:long</blogID>
<userID>xs:long</userID>
</publishBlogPost><publishBlogPostResponse>
<return>
<!-- Contents of BlogPost -->
<return>
</publishBlogPostResponse>DELETE http://domain:port/clearspace_context/rpc/rest/blogService/attachments/{attachmentID}
<removeAttachment>
<attachmentID>xs:long</attachmentID>
</removeAttachment>POST http://domain:port/clearspace_context/rpc/rest/blogService/blogsEnabled
<setBlogsEnabled>
<blogsEnabled>xs:boolean</blogsEnabled>
</setBlogsEnabled>POST http://domain:port/clearspace_context/rpc/rest/blogService/commentsEnabled
<setCommentsEnabled>
<commentsEnabled>xs:boolean</commentsEnabled>
</setCommentsEnabled>POST http://domain:port/clearspace_context/rpc/rest/blogService/pingServices
<setPingServices>
<services>xs:string</services>
</setPingServices>POST http://domain:port/clearspace_context/rpc/rest/blogService/pingsEnabled
<setPingsEnabled>
<pingsEnabled>xs:boolean</pingsEnabled>
</setPingsEnabled>POST http://domain:port/clearspace_context/rpc/rest/blogService/pingsOverrideEnabled
<setPingsOverrideEnabled>
<pingsOverrideEnabled>xs:boolean</pingsOverrideEnabled>
</setPingsOverrideEnabled>POST http://domain:port/clearspace_context/rpc/rest/blogService/trackbacksEnabled
<setTrackbacksEnabled>
<trackbacksEnabled>xs:boolean</trackbacksEnabled>
</setTrackbacksEnabled>PUT http://domain:port/clearspace_context/rpc/rest/blogService/blogPosts
<updateBlogPost>
<blogPost>
<!-- Contents of BlogPost -->
<blogPost>
</updateBlogPost>POST http://domain:port/clearspace_context/rpc/rest/blogService/attachmentUpload
<uploadAttachmentToBlogPost>
<blogPostID>xs:long</blogPostID>
<name>xs:string</name>
<contentTypes>xs:string</contentTypes>
<!-- List of ... -->
<source>xs:base64Binary</source>
</uploadAttachmentToBlogPost><uploadAttachmentToBlogPostResponse>
<return>
<!-- Contents of Attachment -->
<return>
</uploadAttachmentToBlogPostResponse>GET http://domain:port/clearspace_context/rpc/rest/blogService/userHasBlogs
<userHasBlogs>
<userID>xs:long</userID>
</userHasBlogs><userHasBlogsResponse>
<return>xs:boolean</return>
</userHasBlogsResponse>| Method | Description |
|---|---|
| addComment | Adds a new comment to an object. |
| addCommentToComment | Adds a new comment having a parent comment to the object. |
| deleteAllComments | Deletes all comments on the object. |
| deleteComment | Deletes a comment in the object. |
| deleteCommentRecursive | Deletes a comment in the object. |
| getComment | Acquire a comment. |
| getCommentCount | Returns the number of comments in the object. |
| getCommentCountWithFilter | Returns the number of comments in the object based on the specified ResultFilter. |
| getComments | Returns an array of all the comments in the object. |
| getUserContentCommentCount | Returns a count of all the comments in all content which has been authored by the supplied user. |
| getUserContentCommentCountWithFilter | Returns a count of all the comments in all content which has been authored by the supplied user. |
| getUserContentComments | Returns array of all the comments in all content which has been authored by the supplied user. |
| getUserContentCommentsWithFilter | Returns array of all the comments in all content which has been authored by the supplied user. |
| updateComment | Updates an existing comment. |
POST http://domain:port/clearspace_context/rpc/rest/commentService/comments
<addComment>
<objectType>xs:int</objectType>
<objectID>xs:long</objectID>
<userID>xs:long</userID>
<body>xs:string</body>
</addComment><addCommentResponse>
<return>
<!-- Contents of Comment -->
<return>
</addCommentResponse>POST http://domain:port/clearspace_context/rpc/rest/commentService/comments/addChild
<addCommentToComment>
<objectType>xs:int</objectType>
<objectID>xs:long</objectID>
<commentID>xs:long</commentID>
<userID>xs:long</userID>
<body>xs:string</body>
</addCommentToComment><addCommentToCommentResponse>
<return>
<!-- Contents of Comment -->
<return>
</addCommentToCommentResponse>DELETE http://domain:port/clearspace_context/rpc/rest/commentService/comments/{objectType}/{objectID}
<deleteAllComments>
<objectType>xs:int</objectType>
<objectID>xs:long</objectID>
</deleteAllComments>DELETE http://domain:port/clearspace_context/rpc/rest/commentService/comments/{objectType}/{objectID}/{commentID}
<deleteComment>
<objectType>xs:int</objectType>
<objectID>xs:long</objectID>
<commentID>xs:long</commentID>
</deleteComment>DELETE http://domain:port/clearspace_context/rpc/rest/commentService/comments/recursiveDelete/{objectType}/{objectID}/{commentID}/{recursive}
<deleteCommentRecursive>
<objectType>xs:int</objectType>
<objectID>xs:long</objectID>
<commentID>xs:long</commentID>
<recursive>xs:boolean</recursive>
</deleteCommentRecursive>GET http://domain:port/clearspace_context/rpc/rest/commentService/comments/{objectType}/{objectID}/{commentID}
<getComment>
<objectType>xs:int</objectType>
<objectID>xs:long</objectID>
<commentID>xs:long</commentID>
</getComment><getCommentResponse>
<return>
<!-- Contents of Comment -->
<return>
</getCommentResponse>GET http://domain:port/clearspace_context/rpc/rest/commentService/commentcount/{objectType}/{objectID}
<getCommentCount>
<objectType>xs:int</objectType>
<objectID>xs:long</objectID>
</getCommentCount><getCommentCountResponse>
<return>xs:int</return>
</getCommentCountResponse>POST http://domain:port/clearspace_context/rpc/rest/commentService/comments/count
<getCommentCountWithFilter>
<objectType>xs:int</objectType>
<objectID>xs:long</objectID>
<filter>
<!-- Contents of CommentResultFilter -->
<filter>
</getCommentCountWithFilter><getCommentCountWithFilterResponse>
<return>xs:int</return>
</getCommentCountWithFilterResponse>GET http://domain:port/clearspace_context/rpc/rest/commentService/comments/{objectType}/{objectID}
<getComments>
<objectType>xs:int</objectType>
<objectID>xs:long</objectID>
</getComments><getCommentsResponse>
<!-- List of ... -->
<return>
<!-- Contents of Comment -->
<return>
</getCommentsResponse>GET http://domain:port/clearspace_context/rpc/rest/commentService/usercommentcount/{userID}
<getUserContentCommentCount>
<userID>xs:long</userID>
</getUserContentCommentCount><getUserContentCommentCountResponse>
<return>xs:int</return>
</getUserContentCommentCountResponse>POST http://domain:port/clearspace_context/rpc/rest/commentService/comments/user/count
<getUserContentCommentCountWithFilter>
<userID>xs:long</userID>
<filter>
<!-- Contents of UserContentCommentResultFilter -->
<filter>
</getUserContentCommentCountWithFilter><getUserContentCommentCountWithFilterResponse>
<return>xs:int</return>
</getUserContentCommentCountWithFilterResponse>GET http://domain:port/clearspace_context/rpc/rest/commentService/usercomments/{userID}
<getUserContentComments>
<userID>xs:long</userID>
</getUserContentComments><getUserContentCommentsResponse>
<!-- List of ... -->
<return>
<!-- Contents of Comment -->
<return>
</getUserContentCommentsResponse>POST http://domain:port/clearspace_context/rpc/rest/commentService/comments/user
<getUserContentCommentsWithFilter>
<userID>xs:long</userID>
<filter>
<!-- Contents of UserContentCommentResultFilter -->
<filter>
</getUserContentCommentsWithFilter><getUserContentCommentsWithFilterResponse>
<!-- List of ... -->
<return>
<!-- Contents of Comment -->
<return>
</getUserContentCommentsWithFilterResponse>PUT http://domain:port/clearspace_context/rpc/rest/commentService/comments
<updateComment>
<objectType>xs:int</objectType>
<objectID>xs:long</objectID>
<comment>
<!-- Contents of Comment -->
<comment>
</updateComment>| Method | Description |
|---|---|
| createCommunity | Creates a new Community as a sub-community off of the specified community. |
| deleteCommunity | Used to delete the specified community |
| deleteProperty | Delete a property with the given name from the community with the given id. |
| getCommunity | Returns a by its id |
| getDocumentIDs | Returns document IDs for all the published documents in the community. |
| getProperties | Returns all tbe extended properties for the community with the specified id. |
| getProperty | Returns a specific extended property for the community with the specified property name and community ID. |