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 required

App identifier (id or uid)

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",
    "rev": "integer",
    "type": "string",
    "uid": "string",
    "name": "string",
    "description": "string",
    "archive_url": "string",
    "avatar_url": "string",
    "metadata": "object",
    "tags": [
      "string"
    ],
    "access": "string",
    "directory_id": "integer",
    "created_at": "string",
    "updated_at": "string",
    "is_pinned": "boolean",
    "is_starred": "boolean",
    "is_subscribed": "boolean",
    "is_trashed": "boolean",
    "is_unread": "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",
    "name": "string",
    "given_name": "string",
    "middle_name": "string",
    "family_name": "string",
    "nickname": "string",
    "email": "string",
    "phone_number": "string",
    "avatar_url": "string",
    "presence": "string",
    "comment": "string",
    "tags": [
      "string"
    ],
    "metadata": "object",
    "created_at": "string",
    "updated_at": "string",
    "is_trashed": "boolean"
  },
  "updated_at": "string",
  "updated_by": {
    "id": "integer",
    "uid": "string",
    "name": "string",
    "given_name": "string",
    "middle_name": "string",
    "family_name": "string",
    "nickname": "string",
    "email": "string",
    "phone_number": "string",
    "avatar_url": "string",
    "presence": "string",
    "comment": "string",
    "tags": [
      "string"
    ],
    "metadata": "object",
    "created_at": "string",
    "updated_at": "string",
    "is_trashed": "boolean"
  }
}

Create file comment

Creates a new comment on the specified file.

POST /api/files/{id}/comments
Path parameters
id integer required

File 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",
    "rev": "integer",
    "type": "string",
    "uid": "string",
    "name": "string",
    "description": "string",
    "archive_url": "string",
    "avatar_url": "string",
    "metadata": "object",
    "tags": [
      "string"
    ],
    "access": "string",
    "directory_id": "integer",
    "created_at": "string",
    "updated_at": "string",
    "is_pinned": "boolean",
    "is_starred": "boolean",
    "is_subscribed": "boolean",
    "is_trashed": "boolean",
    "is_unread": "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",
    "name": "string",
    "given_name": "string",
    "middle_name": "string",
    "family_name": "string",
    "nickname": "string",
    "email": "string",
    "phone_number": "string",
    "avatar_url": "string",
    "presence": "string",
    "comment": "string",
    "tags": [
      "string"
    ],
    "metadata": "object",
    "created_at": "string",
    "updated_at": "string",
    "is_trashed": "boolean"
  },
  "updated_at": "string",
  "updated_by": {
    "id": "integer",
    "uid": "string",
    "name": "string",
    "given_name": "string",
    "middle_name": "string",
    "family_name": "string",
    "nickname": "string",
    "email": "string",
    "phone_number": "string",
    "avatar_url": "string",
    "presence": "string",
    "comment": "string",
    "tags": [
      "string"
    ],
    "metadata": "object",
    "created_at": "string",
    "updated_at": "string",
    "is_trashed": "boolean"
  }
}

Create post comment

Creates a new comment on the specified post.

POST /api/posts/{id}/comments
Path parameters
id integer required

Post 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",
    "rev": "integer",
    "type": "string",
    "uid": "string",
    "name": "string",
    "description": "string",
    "archive_url": "string",
    "avatar_url": "string",
    "metadata": "object",
    "tags": [
      "string"
    ],
    "access": "string",
    "directory_id": "integer",
    "created_at": "string",
    "updated_at": "string",
    "is_pinned": "boolean",
    "is_starred": "boolean",
    "is_subscribed": "boolean",
    "is_trashed": "boolean",
    "is_unread": "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",
    "name": "string",
    "given_name": "string",
    "middle_name": "string",
    "family_name": "string",
    "nickname": "string",
    "email": "string",
    "phone_number": "string",
    "avatar_url": "string",
    "presence": "string",
    "comment": "string",
    "tags": [
      "string"
    ],
    "metadata": "object",
    "created_at": "string",
    "updated_at": "string",
    "is_trashed": "boolean"
  },
  "updated_at": "string",
  "updated_by": {
    "id": "integer",
    "uid": "string",
    "name": "string",
    "given_name": "string",
    "middle_name": "string",
    "family_name": "string",
    "nickname": "string",
    "email": "string",
    "phone_number": "string",
    "avatar_url": "string",
    "presence": "string",
    "comment": "string",
    "tags": [
      "string"
    ],
    "metadata": "object",
    "created_at": "string",
    "updated_at": "string",
    "is_trashed": "boolean"
  }
}

Get comment

Gets a comment by id.

GET /api/comments/{id}
Path parameters
id integer required

Id of the comment.

Query parameters
trashed boolean

true to return comment even if trashed, otherwise false.

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",
    "rev": "integer",
    "type": "string",
    "uid": "string",
    "name": "string",
    "description": "string",
    "archive_url": "string",
    "avatar_url": "string",
    "metadata": "object",
    "tags": [
      "string"
    ],
    "access": "string",
    "directory_id": "integer",
    "created_at": "string",
    "updated_at": "string",
    "is_pinned": "boolean",
    "is_starred": "boolean",
    "is_subscribed": "boolean",
    "is_trashed": "boolean",
    "is_unread": "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",
    "name": "string",
    "given_name": "string",
    "middle_name": "string",
    "family_name": "string",
    "nickname": "string",
    "email": "string",
    "phone_number": "string",
    "avatar_url": "string",
    "presence": "string",
    "comment": "string",
    "tags": [
      "string"
    ],
    "metadata": "object",
    "created_at": "string",
    "updated_at": "string",
    "is_trashed": "boolean"
  },
  "updated_at": "string",
  "updated_by": {
    "id": "integer",
    "uid": "string",
    "name": "string",
    "given_name": "string",
    "middle_name": "string",
    "family_name": "string",
    "nickname": "string",
    "email": "string",
    "phone_number": "string",
    "avatar_url": "string",
    "presence": "string",
    "comment": "string",
    "tags": [
      "string"
    ],
    "metadata": "object",
    "created_at": "string",
    "updated_at": "string",
    "is_trashed": "boolean"
  }
}

Update comment

Updates a comment.

PATCH /api/comments/{id}
Path parameters
id integer required

Id 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",
    "rev": "integer",
    "type": "string",
    "uid": "string",
    "name": "string",
    "description": "string",
    "archive_url": "string",
    "avatar_url": "string",
    "metadata": "object",
    "tags": [
      "string"
    ],
    "access": "string",
    "directory_id": "integer",
    "created_at": "string",
    "updated_at": "string",
    "is_pinned": "boolean",
    "is_starred": "boolean",
    "is_subscribed": "boolean",
    "is_trashed": "boolean",
    "is_unread": "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",
    "name": "string",
    "given_name": "string",
    "middle_name": "string",
    "family_name": "string",
    "nickname": "string",
    "email": "string",
    "phone_number": "string",
    "avatar_url": "string",
    "presence": "string",
    "comment": "string",
    "tags": [
      "string"
    ],
    "metadata": "object",
    "created_at": "string",
    "updated_at": "string",
    "is_trashed": "boolean"
  },
  "updated_at": "string",
  "updated_by": {
    "id": "integer",
    "uid": "string",
    "name": "string",
    "given_name": "string",
    "middle_name": "string",
    "family_name": "string",
    "nickname": "string",
    "email": "string",
    "phone_number": "string",
    "avatar_url": "string",
    "presence": "string",
    "comment": "string",
    "tags": [
      "string"
    ],
    "metadata": "object",
    "created_at": "string",
    "updated_at": "string",
    "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 string used to find matching items by name, e.g. q=test.

tag string

List items with the specified tag.

trashed boolean

Indicates whether trashed items should be listed (default is false). Specify null to list both trashed and non-trashed items.

order_by string

Specifies the sort order and direction for the listing, e.g. order_by=id or order_by=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 and 100. Default is 25.

count_only boolean

true to count the number of matching items instead of listing them; when specified the response will only contain the count 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 required

App identifier (id or uid)

Query parameters
around integer

A comment id. Used to find results "around" a specific comment.

q string

A string used to find matching items by name, e.g. q=test.

tag string

List items with the specified tag.

trashed boolean

Indicates whether trashed items should be listed (default is false). Specify null to list both trashed and non-trashed items.

order_by string

Specifies the sort order and direction for the listing, e.g. order_by=id or order_by=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 and 100. Default is 25.

count_only boolean

true to count the number of matching items instead of listing them; when specified the response will only contain the count 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 required

File id.

Query parameters
around integer

A comment id. Used to find results "around" a specific comment.

q string

A string used to find matching items by name, e.g. q=test.

tag string

List items with the specified tag.

trashed boolean

Indicates whether trashed items should be listed (default is false). Specify null to list both trashed and non-trashed items.

order_by string

Specifies the sort order and direction for the listing, e.g. order_by=id or order_by=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 and 100. Default is 25.

count_only boolean

true to count the number of matching items instead of listing them; when specified the response will only contain the count 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 required

Post id.

Query parameters
around integer

A comment id. Used to find results "around" a specific comment.

q string

A string used to find matching items by name, e.g. q=test.

tag string

List items with the specified tag.

trashed boolean

Indicates whether trashed items should be listed (default is false). Specify null to list both trashed and non-trashed items.

order_by string

Specifies the sort order and direction for the listing, e.g. order_by=id or order_by=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 and 100. Default is 25.

count_only boolean

true to count the number of matching items instead of listing them; when specified the response will only contain the count 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 required

Id 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 required

Id 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 required

Id 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

Support

To access live chat with our developer success team you need a Weavy account.

Sign in or create a Weavy account