Client
CLI
A user can query and interact with the posts
module using the CLI.
Query
The query
commands allow users to query the posts
state.
desmos query posts --help
post
The post
query command allows users to query a post with the given id inside a subspace with the given id.
desmos query posts post [subspace-id] [post-id] [flags]
Example:
desmos query posts post 1 1
Example output:
post:
author: desmos1rfv0f7mx7w9d3jv3h803u38vqym9ygg344asm3
conversation_id: "0"
creation_date: "2022-06-20T15:13:10.751262Z"
entities:
hashtags: []
mentions: []
urls:
- display_url: This
end: "3"
start: "0"
url: https://example.com
external_id: This is my external id
id: "1"
last_edited_date: null
referenced_posts: []
reply_settings: REPLY_SETTING_EVERYONE
section_id: 1
subspace_id: "1"
text: This is my post text
posts
The posts
query command allows users to query all the posts for a given subspace id optionally specifying also a section id.
desmos query posts posts [subspace-id] [[section-id]] [flags]
Examples:
desmos query posts posts 1 --page=1 --limit=100
desmos query posts posts 1 1 --page=1 --limit=100
Example output:
pagination:
next_key: null
total: "0"
posts:
- author: desmos1rfv0f7mx7w9d3jv3h803u38vqym9ygg344asm3
conversation_id: "0"
creation_date: "2022-06-20T15:13:10.751262Z"
entities:
hashtags: []
mentions: []
urls:
- display_url: This
end: "3"
start: "0"
url: https://example.com
external_id: This is my external id
id: "1"
last_edited_date: null
referenced_posts: []
reply_settings: REPLY_SETTING_EVERYONE
section_id: 1
subspace_id: "1"
text: This is my post text
- author: desmos1rfv0f7mx7w9d3jv3h803u38vqym9ygg344asm3
conversation_id: "0"
creation_date: "2022-06-21T09:19:12.343428Z"
entities:
hashtags: []
mentions: []
urls:
- display_url: This
end: "3"
start: "0"
url: https://example.com
external_id: This is my external id
id: "2"
last_edited_date: null
referenced_posts: []
reply_settings: REPLY_SETTING_EVERYONE
section_id: 1
subspace_id: "1"
text: This is my second post text
attachments
The attachments
query command allow users to query all the attachments for the post with the given id inside the subspace with the
given id.
desmos query posts attachments [subspace-id] [post-id] [flags]
Example:
desmos query posts attachments 1 1 --page=1 --limit=100
Example output:
attachments:
- content:
'@type': /desmos.posts.v3.media
mime_type: image/png
uri: ftp://user:[email protected]/image.png
id: 1
post_id: "1"
section_id: 0
subspace_id: "1"
pagination:
next_key: null
total: "0"
answers
The answers
query command allows users to query all the answers for a given poll attached to the given post living on the given subspace.
It is also possible to specify an optional user.
desmos query posts answers [subspace-id] [post-id] [poll-id] [[user]] [flags]
Examples:
desmos query posts answers 1 1 1
desmos query posts answers 1 1 1 desmos1mc0mrx23aawryc6gztvdyrupph00yz8lk42v40 --page=1 --limit=100
Examples output:
answers:
- answers_indexes:
- 0
- 1
poll_id: 1
post_id: "1"
section_id: 0
subspace_id: "1"
user: desmos1rfv0f7mx7w9d3jv3h803u38vqym9ygg344asm3
pagination:
next_key: null
total: "0"
params
The params
query command allows users to get the currently set parameters.
desmos query posts params [flags]
Examples:
desmos query posts params
Example output:
params:
max_text_length: 500
incoming-post-owner-transfer-requests
The incoming-post-owner-transfer-requests
query command allows users to get the incoming post ownership transfer requests.
desmos query posts incoming-post-owner-transfer-requests [subspace-id] [[receiver]] [flags]
Examples:
desmos query posts incoming-post-owner-transfer-requests 1
desmos query posts incoming-post-owner-transfer-requests 1 desmos1f39c3qlgc7mgu0v505easutdrukr8yal0246fs --page=1 --limit=100
Example output:
pagination:
next_key: null
total: "0"
requests:
- post_id: "1"
receiver: desmos1f39c3qlgc7mgu0v505easutdrukr8yal0246fs
sender: desmos1dm3saw9gwx0ha4mdd67rn2ahfwhewzgvd7q5vn
subspace_id: "1"
gRPC
A user can query the posts
module gRPC endpoints.
Post
The Post
endpoint allows users to query a post with the given id inside a subspace with the given id.
desmos.posts.v3.Query/Post
Example:
grpcurl -plaintext \
-d '{"subspace_id":1, "post_id":1}' localhost:9090 desmos.posts.v3.Query/Post
Example output:
{
"post": {
"subspaceId": "1",
"sectionId": 1,
"id": "1",
"externalId": "This is my external id",
"text": "This is my post text",
"entities": {
"urls": [
{
"end": "3",
"url": "https://example.com",
"displayUrl": "This"
}
]
},
"author": "desmos1rfv0f7mx7w9d3jv3h803u38vqym9ygg344asm3",
"replySettings": "REPLY_SETTING_EVERYONE",
"creationDate": "2022-06-20T15:13:10.751262Z",
"lastEditedDate": "2022-06-21T15:04:05.722967Z"
}
}
SubspacePosts
The SubspacePosts
endpoint allows users to query all the posts of the subspace with the given id.
desmos.posts.v3.Query/SubspacePosts
Example:
grpcurl -plaintext \
-d '{"subspace_id":1}' localhost:9090 desmos.posts.v3.Query/SubspacePosts
Example output:
{
"posts": [
{
"subspaceId": "1",
"sectionId": 1,
"id": "1",
"externalId": "This is my external id",
"text": "This is my post text",
"entities": {
"urls": [
{
"end": "3",
"url": "https://example.com",
"displayUrl": "This"
}
]
},
"author": "desmos1rfv0f7mx7w9d3jv3h803u38vqym9ygg344asm3",
"replySettings": "REPLY_SETTING_EVERYONE",
"creationDate": "2022-06-20T15:13:10.751262Z",
"lastEditedDate": "2022-06-21T15:04:05.722967Z"
},
{
"subspaceId": "1",
"sectionId": 1,
"id": "2",
"externalId": "This is my external id",
"text": "This is my second post text",
"entities": {
"urls": [
{
"end": "3",
"url": "https://example.com",
"displayUrl": "This"
}
]
},
"author": "desmos1rfv0f7mx7w9d3jv3h803u38vqym9ygg344asm3",
"replySettings": "REPLY_SETTING_EVERYONE",
"creationDate": "2022-06-21T09:19:12.343428Z"
}
],
"pagination": {
"total": "2"
}
}
SectionPosts
The SectionPosts
endpoint allows users to return all the posts associated with the section with the given id.
desmos.posts.v3.Query/SectionPosts
Example:
grpcurl -plaintext \
-d '{"subspace_id":1, "section_id":1}' localhost:9090 desmos.posts.v3.Query/SectionPosts
Example output:
{
"posts": [
{
"subspaceId": "1",
"sectionId": 1,
"id": "1",
"externalId": "This is my external id",
"text": "This is my post text",
"entities": {
"urls": [
{
"end": "3",
"url": "https://example.com",
"displayUrl": "This"
}
]
},
"author": "desmos1rfv0f7mx7w9d3jv3h803u38vqym9ygg344asm3",
"replySettings": "REPLY_SETTING_EVERYONE",
"creationDate": "2022-06-20T15:13:10.751262Z",
"lastEditedDate": "2022-06-21T15:04:05.722967Z"
},
{
"subspaceId": "1",
"sectionId": 1,
"id": "2",
"externalId": "This is my external id",
"text": "This is my second post text",
"entities": {
"urls": [
{
"end": "3",
"url": "https://example.com",
"displayUrl": "This"
}
]
},
"author": "desmos1rfv0f7mx7w9d3jv3h803u38vqym9ygg344asm3",
"replySettings": "REPLY_SETTING_EVERYONE",
"creationDate": "2022-06-21T09:19:12.343428Z"
}
],
"pagination": {
"total": "2"
}
}
PostAttachments
The PostAttachments
endpoint allows users to query all the attachment associated with the post id given.
desmos.posts.v3.Query/PostAttachments
Example:
grpcurl -plaintext \
-d '{"subspace_id":1, "post_id":1}' localhost:9090 desmos.posts.v3.Query/PostAttachments
Example output:
{
"attachments": [
{
"subspaceId": "1",
"postId": "1",
"id": 1,
"content": {"@type":"/desmos.posts.v3.media","mimeType":"image/png","uri":"ftp://user:[email protected]/image.png"}
},
{
"subspaceId": "1",
"postId": "1",
"id": 2,
"content": {"@type":"/desmos.posts.v3.poll","allowsAnswerEdits":true,"allowsMultipleAnswers":true,"endDate":"2025-01-01T12:00:00Z","providedAnswers":[{"text":"yes"},{"text":"no"}],"question":"A question"}
}
],
"pagination": {
"total": "2"
}
}
PollAnswers
The PollAnswers
endpoint allows users to query al the poll answer associated with the given poll id attached to the post
with the given post id.
desmos.posts.v3.Query/PollAnswers
Examples:
grpcurl -plaintext \
-d '{"subspace_id":1, "post_id":1, "poll_id":2}' localhost:9090 desmos.posts.v3.Query/PollAnswers
grpcurl -plaintext \
-d '{"subspace_id":1, "post_id":1, "poll_id":2, "user":"desmos1rfv0f7mx7w9d3jv3h803u38vqym9ygg344asm3"}' localhost:9090 desmos.posts.v3.Query/PollAnswers
Example output:
{
"answers": [
{
"subspaceId": "1",
"postId": "1",
"pollId": 2,
"answersIndexes": [
0,
1
],
"user": "desmos1rfv0f7mx7w9d3jv3h803u38vqym9ygg344asm3"
}
],
"pagination": {
"total": "1"
}
}
Params
The Params
endpoint allows users to query the module's parameters.
desmos.posts.v3.Query/Params
Example:
grpcurl -plaintext localhost:9090 desmos.posts.v3.Query/Params
Example output:
{
"params": {
"maxTextLength": 500
}
}
IncomingPostOwnerTransferRequests
The IncomingPostOwnerTransferRequests
endpoint allows users to query all the incoming post owner transfer requests.
desmos.posts.v3.Query/IncomingPostOwnerTransferRequests
Example:
grpcurl -plaintext \
-d '{"subspace_id":1, "receiver":"desmos1f39c3qlgc7mgu0v505easutdrukr8yal0246fs"}' localhost:9090 desmos.posts.v3.Query/IncomingPostOwnerTransferRequests
Example output:
{
"requests": [
{
"subspaceId": "1",
"postId": "1",
"sender": "desmos1dm3saw9gwx0ha4mdd67rn2ahfwhewzgvd7q5vn",
"receiver": "desmos1f39c3qlgc7mgu0v505easutdrukr8yal0246fs"
}
],
"pagination": {
"total": "1"
}
}
REST
A user can query the posts
module using REST endpoints.
Post
The Post
endpoint allows users to query a post with the given id inside a subspace with the given id.
/desmos/posts/v3/subspaces/{subspace_id}/posts/{post_id}
SubspacePosts
The SubspacePosts
endpoint allows users to query all the posts of the subspace with the given id.
/desmos/posts/v3/subspaces/{subspace_id}/posts
SectionPosts
The SectionPosts
endpoint allows users to return all the posts associated with the section with the given id associated
to the subspace with the given id.
/desmos/posts/v3/subspaces/{subspace_id}/sections/{section_id}/posts
PostAttachments
The PostAttachments
endpoint allows users to query all the attachment associated with the post id given living inside
the subspace with the given id.
/desmos/posts/v3/subspaces/{subspace_id}/posts/{post_id}/attachments
PollAnswers
The PollAnswers
endpoint allows users to query al the poll answer associated with the given poll id attached to the post
with the given post id inside the subspace with the given id.
/desmos/posts/v3/subspaces/{subspace_id}/posts/{post_id}/polls/{poll_id}/answers
Params
The Params
endpoint allows users to query the module's parameters.
/desmos/posts/v3/params
IncomingPostOwnerTransferRequests
The IncomingPostOwnerTransferRequests
endpoint allows users to query all the incoming post owner transfer requests.
/desmos/posts/v3/subspaces/{subspace_id}/post-owner-transfer-requests?receiver={receiver}