Comments
The Comments API supports managing comments.
Create app comment
Creates a new comment in the specified Comments app.
POST /api/apps/{app}/comments
Path parameters
app
string
requiredApp identifier (
id
oruid
)
Body parameters
blobs
array of integers
Ids of blobs to attach.
embed_id
integer
Id of embed to attach.
meeting_id
integer
Id of meeting to attach.
options
array of objects
List of poll options to attach.
text
string
The message text.
metadata
object
Additional metadata properties, e.g.
{ "color": "blue", "size": "XL" }
.
tags
array of strings
A list of tags to associate with the item.
Example request
curl {WEAVY-URL}/api/apps/acme-comments/comments
-H "Authorization: Bearer {ACCESS-TOKEN | API-KEY}"
--json "{ 'text': 'This is a comment' }"
Response codes
201 Created
400 Bad Request
401 Unauthorized
403 Forbidden
404 Not Found
422 Validation Failed
Response schema
{
"id": "integer",
"app": {
"id": "integer",
"type": "string",
"uid": "string",
"access": "string",
"directory_id": "integer",
"display_name": "string",
"name": "string",
"description": "string",
"archive_url": "string",
"avatar_url": "string",
"metadata": "object",
"tags": [
"string"
],
"created_at": "string",
"updated_at": "string",
"is_trashed": "boolean",
"is_starred": "boolean",
"is_subscribed": "boolean",
"permissions": [
"string"
]
},
"parent": {
"id": "integer",
"type": "string"
},
"text": "string",
"html": "string",
"plain": "string",
"embed": {
"id": "integer",
"type": "string",
"title": "string",
"description": "string",
"author_name": "string",
"author_url": "string",
"provider_name": "string",
"provider_url": "string",
"cache_age": "integer",
"thumbnail_url": "string",
"thumbnail_width": "integer",
"thumbnail_height": "integer",
"url": "string",
"width": "integer",
"height": "integer",
"html": "string",
"original_url": "string"
},
"meeting": {
"id": "integer",
"provider": "string",
"provider_id": "string",
"join_url": "string",
"code": "string",
"created_at": "string",
"metadata": "object"
},
"attachments": {
"data": [
"object"
],
"start": "integer",
"end": "integer",
"count": "integer"
},
"options": {
"data": [
"object"
],
"start": "integer",
"end": "integer",
"count": "integer"
},
"reactions": {
"data": [
"object"
],
"start": "integer",
"end": "integer",
"count": "integer"
},
"metadata": "object",
"tags": [
"string"
],
"is_starred": "boolean",
"is_subscribed": "boolean",
"is_trashed": "boolean",
"created_at": "string",
"created_by": {
"id": "integer",
"uid": "string",
"display_name": "string",
"avatar_url": "string",
"email": "string",
"given_name": "string",
"middle_name": "string",
"name": "string",
"family_name": "string",
"nickname": "string",
"phone_number": "string",
"comment": "string",
"metadata": "object",
"tags": [
"string"
],
"presence": "string",
"directory_id": "integer",
"created_at": "string",
"updated_at": "string",
"is_bot": "boolean",
"is_suspended": "boolean",
"is_trashed": "boolean"
},
"updated_at": "string",
"updated_by": {
"id": "integer",
"uid": "string",
"display_name": "string",
"avatar_url": "string",
"email": "string",
"given_name": "string",
"middle_name": "string",
"name": "string",
"family_name": "string",
"nickname": "string",
"phone_number": "string",
"comment": "string",
"metadata": "object",
"tags": [
"string"
],
"presence": "string",
"directory_id": "integer",
"created_at": "string",
"updated_at": "string",
"is_bot": "boolean",
"is_suspended": "boolean",
"is_trashed": "boolean"
}
}
Create file comment
Creates a new comment on the specified file.
POST /api/files/{id}/comments
Path parameters
id
integer
requiredFile id
Body parameters
blobs
array of integers
Ids of blobs to attach.
embed_id
integer
Id of embed to attach.
meeting_id
integer
Id of meeting to attach.
options
array of objects
List of poll options to attach.
text
string
The message text.
metadata
object
Additional metadata properties, e.g.
{ "color": "blue", "size": "XL" }
.
tags
array of strings
A list of tags to associate with the item.
Example request
curl {WEAVY-URL}/api/files/1/comments
-H "Authorization: Bearer {ACCESS-TOKEN | API-KEY}"
--json "{ 'text': 'This is a comment on a file' }"
Response codes
201 Created
400 Bad Request
401 Unauthorized
403 Forbidden
404 Not Found
422 Validation Failed
Response schema
{
"id": "integer",
"app": {
"id": "integer",
"type": "string",
"uid": "string",
"access": "string",
"directory_id": "integer",
"display_name": "string",
"name": "string",
"description": "string",
"archive_url": "string",
"avatar_url": "string",
"metadata": "object",
"tags": [
"string"
],
"created_at": "string",
"updated_at": "string",
"is_trashed": "boolean",
"is_starred": "boolean",
"is_subscribed": "boolean",
"permissions": [
"string"
]
},
"parent": {
"id": "integer",
"type": "string"
},
"text": "string",
"html": "string",
"plain": "string",
"embed": {
"id": "integer",
"type": "string",
"title": "string",
"description": "string",
"author_name": "string",
"author_url": "string",
"provider_name": "string",
"provider_url": "string",
"cache_age": "integer",
"thumbnail_url": "string",
"thumbnail_width": "integer",
"thumbnail_height": "integer",
"url": "string",
"width": "integer",
"height": "integer",
"html": "string",
"original_url": "string"
},
"meeting": {
"id": "integer",
"provider": "string",
"provider_id": "string",
"join_url": "string",
"code": "string",
"created_at": "string",
"metadata": "object"
},
"attachments": {
"data": [
"object"
],
"start": "integer",
"end": "integer",
"count": "integer"
},
"options": {
"data": [
"object"
],
"start": "integer",
"end": "integer",
"count": "integer"
},
"reactions": {
"data": [
"object"
],
"start": "integer",
"end": "integer",
"count": "integer"
},
"metadata": "object",
"tags": [
"string"
],
"is_starred": "boolean",
"is_subscribed": "boolean",
"is_trashed": "boolean",
"created_at": "string",
"created_by": {
"id": "integer",
"uid": "string",
"display_name": "string",
"avatar_url": "string",
"email": "string",
"given_name": "string",
"middle_name": "string",
"name": "string",
"family_name": "string",
"nickname": "string",
"phone_number": "string",
"comment": "string",
"metadata": "object",
"tags": [
"string"
],
"presence": "string",
"directory_id": "integer",
"created_at": "string",
"updated_at": "string",
"is_bot": "boolean",
"is_suspended": "boolean",
"is_trashed": "boolean"
},
"updated_at": "string",
"updated_by": {
"id": "integer",
"uid": "string",
"display_name": "string",
"avatar_url": "string",
"email": "string",
"given_name": "string",
"middle_name": "string",
"name": "string",
"family_name": "string",
"nickname": "string",
"phone_number": "string",
"comment": "string",
"metadata": "object",
"tags": [
"string"
],
"presence": "string",
"directory_id": "integer",
"created_at": "string",
"updated_at": "string",
"is_bot": "boolean",
"is_suspended": "boolean",
"is_trashed": "boolean"
}
}
Create post comment
Creates a new comment on the specified post.
POST /api/posts/{id}/comments
Path parameters
id
integer
requiredPost id
Body parameters
blobs
array of integers
Ids of blobs to attach.
embed_id
integer
Id of embed to attach.
meeting_id
integer
Id of meeting to attach.
options
array of objects
List of poll options to attach.
text
string
The message text.
metadata
object
Additional metadata properties, e.g.
{ "color": "blue", "size": "XL" }
.
tags
array of strings
A list of tags to associate with the item.
Example request
curl {WEAVY-URL}/api/posts/1/comments
-H "Authorization: Bearer {ACCESS-TOKEN | API-KEY}"
--json "{ 'text': 'This is a comment on a post' }"
Response codes
201 Created
400 Bad Request
401 Unauthorized
403 Forbidden
404 Not Found
422 Validation Failed
Response schema
{
"id": "integer",
"app": {
"id": "integer",
"type": "string",
"uid": "string",
"access": "string",
"directory_id": "integer",
"display_name": "string",
"name": "string",
"description": "string",
"archive_url": "string",
"avatar_url": "string",
"metadata": "object",
"tags": [
"string"
],
"created_at": "string",
"updated_at": "string",
"is_trashed": "boolean",
"is_starred": "boolean",
"is_subscribed": "boolean",
"permissions": [
"string"
]
},
"parent": {
"id": "integer",
"type": "string"
},
"text": "string",
"html": "string",
"plain": "string",
"embed": {
"id": "integer",
"type": "string",
"title": "string",
"description": "string",
"author_name": "string",
"author_url": "string",
"provider_name": "string",
"provider_url": "string",
"cache_age": "integer",
"thumbnail_url": "string",
"thumbnail_width": "integer",
"thumbnail_height": "integer",
"url": "string",
"width": "integer",
"height": "integer",
"html": "string",
"original_url": "string"
},
"meeting": {
"id": "integer",
"provider": "string",
"provider_id": "string",
"join_url": "string",
"code": "string",
"created_at": "string",
"metadata": "object"
},
"attachments": {
"data": [
"object"
],
"start": "integer",
"end": "integer",
"count": "integer"
},
"options": {
"data": [
"object"
],
"start": "integer",
"end": "integer",
"count": "integer"
},
"reactions": {
"data": [
"object"
],
"start": "integer",
"end": "integer",
"count": "integer"
},
"metadata": "object",
"tags": [
"string"
],
"is_starred": "boolean",
"is_subscribed": "boolean",
"is_trashed": "boolean",
"created_at": "string",
"created_by": {
"id": "integer",
"uid": "string",
"display_name": "string",
"avatar_url": "string",
"email": "string",
"given_name": "string",
"middle_name": "string",
"name": "string",
"family_name": "string",
"nickname": "string",
"phone_number": "string",
"comment": "string",
"metadata": "object",
"tags": [
"string"
],
"presence": "string",
"directory_id": "integer",
"created_at": "string",
"updated_at": "string",
"is_bot": "boolean",
"is_suspended": "boolean",
"is_trashed": "boolean"
},
"updated_at": "string",
"updated_by": {
"id": "integer",
"uid": "string",
"display_name": "string",
"avatar_url": "string",
"email": "string",
"given_name": "string",
"middle_name": "string",
"name": "string",
"family_name": "string",
"nickname": "string",
"phone_number": "string",
"comment": "string",
"metadata": "object",
"tags": [
"string"
],
"presence": "string",
"directory_id": "integer",
"created_at": "string",
"updated_at": "string",
"is_bot": "boolean",
"is_suspended": "boolean",
"is_trashed": "boolean"
}
}
Get comment
Gets a comment by id.
GET /api/comments/{id}
Path parameters
id
integer
requiredId of the comment.
Query parameters
trashed
boolean
true
to return comment even if trashed, otherwisefalse
.
Example request
curl {WEAVY-URL}/api/comments/1
-H "Authorization: Bearer {ACCESS-TOKEN | API-KEY}"
Response codes
200 OK
401 Unauthorized
404 Not Found
Response schema
{
"id": "integer",
"app": {
"id": "integer",
"type": "string",
"uid": "string",
"access": "string",
"directory_id": "integer",
"display_name": "string",
"name": "string",
"description": "string",
"archive_url": "string",
"avatar_url": "string",
"metadata": "object",
"tags": [
"string"
],
"created_at": "string",
"updated_at": "string",
"is_trashed": "boolean",
"is_starred": "boolean",
"is_subscribed": "boolean",
"permissions": [
"string"
]
},
"parent": {
"id": "integer",
"type": "string"
},
"text": "string",
"html": "string",
"plain": "string",
"embed": {
"id": "integer",
"type": "string",
"title": "string",
"description": "string",
"author_name": "string",
"author_url": "string",
"provider_name": "string",
"provider_url": "string",
"cache_age": "integer",
"thumbnail_url": "string",
"thumbnail_width": "integer",
"thumbnail_height": "integer",
"url": "string",
"width": "integer",
"height": "integer",
"html": "string",
"original_url": "string"
},
"meeting": {
"id": "integer",
"provider": "string",
"provider_id": "string",
"join_url": "string",
"code": "string",
"created_at": "string",
"metadata": "object"
},
"attachments": {
"data": [
"object"
],
"start": "integer",
"end": "integer",
"count": "integer"
},
"options": {
"data": [
"object"
],
"start": "integer",
"end": "integer",
"count": "integer"
},
"reactions": {
"data": [
"object"
],
"start": "integer",
"end": "integer",
"count": "integer"
},
"metadata": "object",
"tags": [
"string"
],
"is_starred": "boolean",
"is_subscribed": "boolean",
"is_trashed": "boolean",
"created_at": "string",
"created_by": {
"id": "integer",
"uid": "string",
"display_name": "string",
"avatar_url": "string",
"email": "string",
"given_name": "string",
"middle_name": "string",
"name": "string",
"family_name": "string",
"nickname": "string",
"phone_number": "string",
"comment": "string",
"metadata": "object",
"tags": [
"string"
],
"presence": "string",
"directory_id": "integer",
"created_at": "string",
"updated_at": "string",
"is_bot": "boolean",
"is_suspended": "boolean",
"is_trashed": "boolean"
},
"updated_at": "string",
"updated_by": {
"id": "integer",
"uid": "string",
"display_name": "string",
"avatar_url": "string",
"email": "string",
"given_name": "string",
"middle_name": "string",
"name": "string",
"family_name": "string",
"nickname": "string",
"phone_number": "string",
"comment": "string",
"metadata": "object",
"tags": [
"string"
],
"presence": "string",
"directory_id": "integer",
"created_at": "string",
"updated_at": "string",
"is_bot": "boolean",
"is_suspended": "boolean",
"is_trashed": "boolean"
}
}
Update comment
Updates a comment.
PATCH /api/comments/{id}
Path parameters
id
integer
requiredId of the comment.
Body parameters
attachments
array of integers
Ids of attached files.
blobs
array of integers
Ids of additional blobs to attach.
embed_id
integer
Id of embed to attach.
meeting_id
integer
Id of meeting to attach.
options
array of objects
List of poll options for the item.
text
string
The message text.
metadata
object
Additional metadata properties, e.g.
{ "color": "blue", "size": "XL" }
.
tags
array of strings
A list of tags to associate with the item.
Example request
curl -X PATCH {WEAVY-URL}/api/comments/1
-H "Authorization: Bearer {ACCESS-TOKEN | API-KEY}"
--json "{'text': 'Update comment text' }"
Response codes
200 OK
400 Bad Request
401 Unauthorized
403 Forbidden
404 Not Found
422 Validation Failed
Response schema
{
"id": "integer",
"app": {
"id": "integer",
"type": "string",
"uid": "string",
"access": "string",
"directory_id": "integer",
"display_name": "string",
"name": "string",
"description": "string",
"archive_url": "string",
"avatar_url": "string",
"metadata": "object",
"tags": [
"string"
],
"created_at": "string",
"updated_at": "string",
"is_trashed": "boolean",
"is_starred": "boolean",
"is_subscribed": "boolean",
"permissions": [
"string"
]
},
"parent": {
"id": "integer",
"type": "string"
},
"text": "string",
"html": "string",
"plain": "string",
"embed": {
"id": "integer",
"type": "string",
"title": "string",
"description": "string",
"author_name": "string",
"author_url": "string",
"provider_name": "string",
"provider_url": "string",
"cache_age": "integer",
"thumbnail_url": "string",
"thumbnail_width": "integer",
"thumbnail_height": "integer",
"url": "string",
"width": "integer",
"height": "integer",
"html": "string",
"original_url": "string"
},
"meeting": {
"id": "integer",
"provider": "string",
"provider_id": "string",
"join_url": "string",
"code": "string",
"created_at": "string",
"metadata": "object"
},
"attachments": {
"data": [
"object"
],
"start": "integer",
"end": "integer",
"count": "integer"
},
"options": {
"data": [
"object"
],
"start": "integer",
"end": "integer",
"count": "integer"
},
"reactions": {
"data": [
"object"
],
"start": "integer",
"end": "integer",
"count": "integer"
},
"metadata": "object",
"tags": [
"string"
],
"is_starred": "boolean",
"is_subscribed": "boolean",
"is_trashed": "boolean",
"created_at": "string",
"created_by": {
"id": "integer",
"uid": "string",
"display_name": "string",
"avatar_url": "string",
"email": "string",
"given_name": "string",
"middle_name": "string",
"name": "string",
"family_name": "string",
"nickname": "string",
"phone_number": "string",
"comment": "string",
"metadata": "object",
"tags": [
"string"
],
"presence": "string",
"directory_id": "integer",
"created_at": "string",
"updated_at": "string",
"is_bot": "boolean",
"is_suspended": "boolean",
"is_trashed": "boolean"
},
"updated_at": "string",
"updated_by": {
"id": "integer",
"uid": "string",
"display_name": "string",
"avatar_url": "string",
"email": "string",
"given_name": "string",
"middle_name": "string",
"name": "string",
"family_name": "string",
"nickname": "string",
"phone_number": "string",
"comment": "string",
"metadata": "object",
"tags": [
"string"
],
"presence": "string",
"directory_id": "integer",
"created_at": "string",
"updated_at": "string",
"is_bot": "boolean",
"is_suspended": "boolean",
"is_trashed": "boolean"
}
}
List comments
List comments.
GET /api/comments
Query parameters
around
integer
A comment id. Used to find results "around" a specific comment.
q
string
A query used to find matching items.
tag
string
List items with the specified tag.
trashed
boolean
Indicates whether trashed items should be listed (default is
false
). Specifynull
to return both trashed and non-trashed items.
order_by
string
Specifies the sort order and direction for the listing, e.g. "
id
" or "id+desc
"
skip
integer
The number of items to skip. Used together with
take
to return a specific range of items (for pagination).
take
integer
Maximum number of items to return in the listing. Should be a value between
1
and100
. Default is25
.
count_only
boolean
true
to only return the number of matching items; when this is specified the response will only contain thecount
property.
Example request
curl {WEAVY-URL}/api/comments
-H "Authorization: Bearer {ACCESS-TOKEN | API-KEY}"
Response codes
200 OK
401 Unauthorized
Response schema
{
"data": [
{
"id": "integer",
"text": "string",
"html": "string",
"plain": "string",
"metadata": "object",
"tags": [
"string"
],
"is_starred": "boolean",
"is_subscribed": "boolean",
"is_trashed": "boolean",
"created_at": "string",
"updated_at": "string"
}
],
"start": "integer",
"end": "integer",
"count": "integer"
}
List app comments
List comments in the specified comments app.
GET /api/apps/{app}/comments
Path parameters
app
string
requiredApp identifier (
id
oruid
)
Query parameters
around
integer
A comment id. Used to find results "around" a specific comment.
q
string
A query used to find matching items.
tag
string
List items with the specified tag.
trashed
boolean
Indicates whether trashed items should be listed (default is
false
). Specifynull
to return both trashed and non-trashed items.
order_by
string
Specifies the sort order and direction for the listing, e.g. "
id
" or "id+desc
"
skip
integer
The number of items to skip. Used together with
take
to return a specific range of items (for pagination).
take
integer
Maximum number of items to return in the listing. Should be a value between
1
and100
. Default is25
.
count_only
boolean
true
to only return the number of matching items; when this is specified the response will only contain thecount
property.
Example request
curl {WEAVY-URL}/api/apps/acme-comments/comments?take=25
-H "Authorization: Bearer {ACCESS-TOKEN | API-KEY}"
Response codes
200 OK
401 Unauthorized
404 Not Found
Response schema
{
"data": [
{
"id": "integer",
"text": "string",
"html": "string",
"plain": "string",
"metadata": "object",
"tags": [
"string"
],
"is_starred": "boolean",
"is_subscribed": "boolean",
"is_trashed": "boolean",
"created_at": "string",
"updated_at": "string"
}
],
"start": "integer",
"end": "integer",
"count": "integer"
}
List file comments
List comments on the specified file.
GET /api/files/{id}/comments
Path parameters
id
integer
requiredFile id.
Query parameters
around
integer
A comment id. Used to find results "around" a specific comment.
q
string
A query used to find matching items.
tag
string
List items with the specified tag.
trashed
boolean
Indicates whether trashed items should be listed (default is
false
). Specifynull
to return both trashed and non-trashed items.
order_by
string
Specifies the sort order and direction for the listing, e.g. "
id
" or "id+desc
"
skip
integer
The number of items to skip. Used together with
take
to return a specific range of items (for pagination).
take
integer
Maximum number of items to return in the listing. Should be a value between
1
and100
. Default is25
.
count_only
boolean
true
to only return the number of matching items; when this is specified the response will only contain thecount
property.
Example request
curl {WEAVY-URL}/api/files/1/comments?take=25
-H "Authorization: Bearer {ACCESS-TOKEN | API-KEY}"
Response codes
200 OK
401 Unauthorized
404 Not Found
Response schema
{
"data": [
{
"id": "integer",
"text": "string",
"html": "string",
"plain": "string",
"metadata": "object",
"tags": [
"string"
],
"is_starred": "boolean",
"is_subscribed": "boolean",
"is_trashed": "boolean",
"created_at": "string",
"updated_at": "string"
}
],
"start": "integer",
"end": "integer",
"count": "integer"
}
List post comments
List comments on the specified post.
GET /api/posts/{id}/comments
Path parameters
id
integer
requiredPost id.
Query parameters
around
integer
A comment id. Used to find results "around" a specific comment.
q
string
A query used to find matching items.
tag
string
List items with the specified tag.
trashed
boolean
Indicates whether trashed items should be listed (default is
false
). Specifynull
to return both trashed and non-trashed items.
order_by
string
Specifies the sort order and direction for the listing, e.g. "
id
" or "id+desc
"
skip
integer
The number of items to skip. Used together with
take
to return a specific range of items (for pagination).
take
integer
Maximum number of items to return in the listing. Should be a value between
1
and100
. Default is25
.
count_only
boolean
true
to only return the number of matching items; when this is specified the response will only contain thecount
property.
Example request
curl {WEAVY-URL}/api/posts/1/comments?take=25
-H "Authorization: Bearer {ACCESS-TOKEN | API-KEY}"
Response codes
200 OK
401 Unauthorized
404 Not Found
Response schema
{
"data": [
{
"id": "integer",
"text": "string",
"html": "string",
"plain": "string",
"metadata": "object",
"tags": [
"string"
],
"is_starred": "boolean",
"is_subscribed": "boolean",
"is_trashed": "boolean",
"created_at": "string",
"updated_at": "string"
}
],
"start": "integer",
"end": "integer",
"count": "integer"
}
Trash comment
Move a comment to the trash.
POST /api/comments/{id}/trash
Path parameters
id
integer
requiredId of the comment to trash.
Example request
curl -X POST {WEAVY-URL}/api/comments/1/trash
-H "Authorization: Bearer {ACCESS-TOKEN | API-KEY}"
Response codes
204 No Content
400 Bad Request
401 Unauthorized
403 Forbidden
404 Not Found
Restore comment
Restore a comment from the trash.
POST /api/comments/{id}/restore
Path parameters
id
integer
requiredId of the comment to restore.
Example request
curl -X POST {WEAVY-URL}/api/comments/1/restore
-H "Authorization: Bearer {ACCESS-TOKEN | API-KEY}"
Response codes
204 No Content
400 Bad Request
401 Unauthorized
403 Forbidden
404 Not Found
Delete comment
Delete a comment.
DELETE /api/comments/{id}
Path parameters
id
integer
requiredId of the comment.
Example request
curl -X DELETE {WEAVY-URL}/api/comments/1
-H "Authorization: Bearer {ACCESS-TOKEN | API-KEY}"
Response codes
204 No Content
400 Bad Request
401 Unauthorized
403 Forbidden
404 Not Found