This site contains the documentation that is relevant to older WSO2 product versions and offerings.
For the latest WSO2 documentation, visit https://wso2.com/documentation/.
Working with Posts in Disqus
Overview
The following operations allow you to work with posts. Click an operation name to see details on how to use it.
For a sample proxy service that illustrates how to work with posts, see Sample configuration.
Operation details
This section provides further details on the operations related to posts.
Returning information about a post
The
getPost
operation returns information about a post.
<disqus.getPost> <related>{$ctx:related}</related> <postId>{$ctx:postId}</postId> </disqus.getPost>
Properties
related:
postId:
Sample request
Following is a sample REST/JSON request that can be handled by the getPost operation.
{ "apiUrl": "https://disqus.com", "postId": "1649781407", "apiKey": "hNCiYG7sBpsyavTbpysXNgHKJ8YDb9IFr3LpcVGj3eEZTPCicTJxNBoHub4etovu", "related": "forum,thread" }
Related Disqus documentation
https://disqus.com/api/docs/posts/details/
Returning a list of posts
The listPosts operation returns a list of posts within a forum/category and by users.
<disqus.listPosts> <forumId>{$ctx:forumId}</forumId> <categoryId>{$ctx:categoryId}</categoryId> <since>{$ctx:since}</since> <cursor>{$ctx:cursor}</cursor> <limit>{$ctx:limit}</limit> <query>{$ctx:query}</query> <popular>{$ctx:popular}</popular> <interval>{$ctx:interval}</interval> <offset>{$ctx:offset}</offset> <include>{$ctx:include}</include> <order>{$ctx:order}</order> <related>{$ctx:related}</related> <threadId>{$ctx:threadId}</threadId> <userId>{$ctx:userId}</userId> </disqus.listPosts>
Properties
forumId:
categoryId:
since:
cursor:
limit:
query:
popular:
interval:
offset:
include:
order:
related:
threadId:
userId:
The table below explains which Disqus API method (endpoint) is used for the listPosts
operation based on the request properties. For example, if popular
is set to true, https://disqus.com/api/3.0/posts/listPopular.json will always be used to process the request. If popular
is set to false, and the threadId
is provided, https://disqus.com/api/docs/threads/listPosts.json will be used regardless of whether values are provided for categoryId
, forumId
, and userId/accessToken
, and if threadId
is not provided but categoryId
is provided, https://disqus.com/api/docs/categories/listPosts.json will be used regardless of whether values are provided for forumId
and userId/accessToken
.
Priority | Parameter | EP 1 | EP 2 | EP 3 | EP 4 | EP 5 |
1 | popular | "true" | - | - | - | - |
2 | threadId | * | provided | - | - | - |
3 | categoryId | * | * | provided | - | - |
4 | forumId | * | * | * | provided | - |
5 | userId/accessToken | * | * | * | * | provided |
* Will not be considered even when a value is supplied in the request.
EP 1 endpoint:
https://disqus.com/api/3.0/posts/listPopular.json
EP 2 endpoint:
https://disqus.com/api/docs/threads/listPosts.json
EP 3 endpoint:
https://disqus.com/api/docs/categories/listPosts.json
EP 4 endpoint:
https://disqus.com/api/docs/forums/listPosts.json
EP 5 endpoint:
Sample request
Following is a sample REST/JSON request that can be handled by the l istPosts operation.
{ "limit": "10", "cursor": "", "userId": "", "threadId": "3189670846", "order": "", "interval": "", "offset": "", "popular": "", "accessToken": "", "forumId": "", "query": "", "categoryId": "", "apiUrl": "https://disqus.com", "since": "", "apiSecret":"", "apiKey": "hNCiYG7sBpsyavTbpysXNgHKJ8YDb9IFr3LpcVGj3eEZTPCicTJxNBoHub4etovu", "related": "forum,thread", "include": "" }
Related Disqus documentation
https://disqus.com/api/docs/posts/list/
Sample configuration
Following is a sample proxy service that illustrates how to connect to Disqus with the init
operation and use the getPost operation. The sample request for this proxy can be found in the getPost sample request. You can use this sample as a template for using other operations in this category.
<proxy name="disqus_getPost" startOnLoad="true" statistics="disable" trace="disable" transports="https,http" xmlns="http://ws.apache.org/ns/synapse"> <target> <inSequence onError="faultHandlerSeq"> <property name="apiUrl" expression="json-eval($.apiUrl)"/> <property name="apiKey" expression="json-eval($.apiKey)"/> <property name="apiSecret" expression="json-eval($.apiSecret)"/> <property name="accessToken" expression="json-eval($.accessToken)"/> <property name="related" expression="json-eval($.related)"/> <property name="postId" expression="json-eval($.postId)"/> <disqus.init> <apiUrl>{$ctx:apiUrl}</apiUrl> <apiKey>{$ctx:apiKey}</apiKey> <apiSecret>{$ctx:apiSecret}</apiSecret> <accessToken>{$ctx:accessToken}</accessToken> </disqus.init> <disqus.getPost> <related>{$ctx:related}</related> <postId>{$ctx:postId}</postId> </disqus.getPost> <respond/> </inSequence> <outSequence> <send/> </outSequence> </target> <description/> </proxy>