To programmatically take action on a comment that is waiting to be approved, send an Atom entry document that defines the action you want to take to the moderation action feed.
Only the moderator can take action on a comments awaiting approval.
See Authenticating requests
for information about how to authenticate the request.
To take action on a comment awaiting approval, complete the following steps:
Table 1. Atom API request details
- Retrieve the moderation service document. See Retrieving the Blogs moderation service document for more details.
- In the service document, locate the Moderation of blog comments workspace, and then find the collection with the <atom:category term="approval-action" .../> element, and make a note of the web address in its href attribute.
- Find the history link element of the comment that you want to take action on by getting a list of the comments awaiting approval. See Getting a list of comments that require action for more details. Make a note of the href attribute of the <link> with the rel="http://www.ibm.com/xmlns/prod/sn/history" attribute for the entry representing the comment.
- Create an Atom entry document that defines the action you want to perform. In the <snx:moderation action="xxx" /> element, choose one of the following options:
Approves the comment and publishes it to the blog.reject
Rejects the request for publication and does not publish the comment to the blog.
Include a link element that identifies the comment you want to take action on. In the href attribute of the link element, include the web address from the history link that you made a note of in Step 3.
For example, to approve a comment, the Atom entry document might contain the following content:
<name>ignored</name> <!-- taken from authenticated moderator user -->
<link rel="related" href="http://enterprise.example.com/blogs/home/api/
<snx:moderation action="approve" />
<content>This content of this comment is not objectionable according to
- Send a POST request to the web address that you noted in Step 2. Pass the Atom entry document that you created in the previous step as input on the request.
|POST||Premoderation content approval status collection||Value of the href attribute of the <collection> element with the child <atom:category term="approval-action" .../> element in the moderation service document.||moderation action|
Provide a moderation action Atom entry document. The content type of the Atom entry document must be application/atom+xml.
Returned HTTP headers
HTTP/1.1 200 OK
Indicates that the comment was successfully moderated. If an error occurs, this header contains one of the error codes.Error codes
- HTTP/1.1 400 Bad Request
- HTTP/1.1 401 Unauthorized
- HTTP/1.1 403 Forbidden. Returned when the current user is authorized to the use the API, but cannot moderate the specified content.
- HTTP/1.1 404 Not Found. Indicates that the content is no longer available.
> POST /blogs/home/api/actions/approval/comments HTTP/1.1
> Authorization: Basic xxx
> Host: enterprise.example.com
> Accept: */*
> Content-Type: application/atom+xml
> Content-Length: 509
< HTTP/1.1 200 OK
< Date: Tue, 03 Aug 2010 20:18:51 GMT
< Server: IBM_HTTP_Server
< Content-Length: 0
< Content-Type: text/plain
< Content-Language: en-US
Parent topic: Working with comments that are awaiting approval
Moderation action entry content