Messages

The Messages API supports managing chat messages.

Create message

Creates a new message in the specified conversation app (chat, chat room or private chat).

POST /api/apps/{id}/messages
Path parameters
id integer required

Conversation (app) 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.

Response codes

200 Success

{
  "id": "integer",
  "app_id": "integer",
  "text": "string",
  "html": "string",
  "plain": "string",
  "attachment_count": "integer",
  "attachments": [
    "object"
  ],
  "embed_id": "integer",
  "meeting_id": "integer",
  "option_count": "integer",
  "options": [
    "object"
  ],
  "reactions": [
    "object"
  ],
  "metadata": "object",
  "tags": [
    "string"
  ],
  "created_at": "string",
  "created_by_id": "integer",
  "modified_at": "string",
  "modified_by_id": "integer",
  "is_trashed": "boolean"
}
Code sample
curl https://{WEAVY-SERVER}/api/apps/1/messages
-H "Authorization: Bearer {ACCESS-TOKEN | API-KEY}"
-H "Content-Type: application/json"
-d "{ 'text': 'This is a message' }"

List messages

List messages in the specified conversation app (chat, chat room or private chat).

GET /api/apps/{id}/messages
Path parameters
id integer required

Conversation (app) id.

Query parameters
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). Specify null to return both trashed and non-trashed items.

order_by string

Specifies the sort order and direction for the listing, e.g. "name" or "name+desc"

top integer

Maximum number of items to return in the listing. Should be a value between 0 and 100. Default is 25.

skip integer

The number of items to skip. Used together with top to return a specific range of items (for pagination).

count boolean

false to skip counting the total number of matching items; default is true.

count_only boolean

true to only return the number of matching items; when this is specified the response will only contain the count property.

Response codes

200 Success

{
  "data": [
    "object"
  ],
  "start": "integer",
  "end": "integer",
  "count": "integer"
}
Code sample
curl https://{WEAVY-SERVER}/api/apps/1/messages?top=50
-H "Authorization: Bearer {ACCESS-TOKEN | API-KEY}"

Get message

Gets a message by id.

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

Id of the message.

Query parameters
trashed boolean

true to return message even if trashed.

Response codes

200 Success

{
  "id": "integer",
  "app_id": "integer",
  "text": "string",
  "html": "string",
  "plain": "string",
  "attachment_count": "integer",
  "attachments": [
    "object"
  ],
  "embed_id": "integer",
  "meeting_id": "integer",
  "option_count": "integer",
  "options": [
    "object"
  ],
  "reactions": [
    "object"
  ],
  "metadata": "object",
  "tags": [
    "string"
  ],
  "created_at": "string",
  "created_by_id": "integer",
  "modified_at": "string",
  "modified_by_id": "integer",
  "is_trashed": "boolean"
}

404 Not Found

Code sample
curl https://{WEAVY-SERVER}/api/messages/1
-H "Authorization: Bearer {ACCESS-TOKEN | API-KEY}"

Update message

Updates a message.

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

Id of the message.

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.

Response codes

200 Success

{
  "id": "integer",
  "app_id": "integer",
  "text": "string",
  "html": "string",
  "plain": "string",
  "attachment_count": "integer",
  "attachments": [
    "object"
  ],
  "embed_id": "integer",
  "meeting_id": "integer",
  "option_count": "integer",
  "options": [
    "object"
  ],
  "reactions": [
    "object"
  ],
  "metadata": "object",
  "tags": [
    "string"
  ],
  "created_at": "string",
  "created_by_id": "integer",
  "modified_at": "string",
  "modified_by_id": "integer",
  "is_trashed": "boolean"
}

404 Not Found

Code sample
$ curl -X PATCH {WEAVY_SERVER}/api/messages/1
-H "Authorization: Bearer {ACCESS-TOKEN | API-KEY}"
-H "Content-Type: application/json"
-d "{ 'text': 'This is an updated message' }"

Delete message

Permanently delete a message.

DELETE /api/messages/{id}
Path parameters
id integer required

Id of the message.

Response codes

204 No Content

Code sample
$ curl -X DELETE {WEAVY_SERVER}/api/messages/1
-H "Authorization: Bearer {ACCESS-TOKEN | API-KEY}"

Trash message

Move a message to the trash.

POST /api/messages/{id}/trash
Path parameters
id integer required

Id of the message to trash.

Response codes

200 Success

{
  "id": "integer",
  "app_id": "integer",
  "text": "string",
  "html": "string",
  "plain": "string",
  "attachment_count": "integer",
  "attachments": [
    "object"
  ],
  "embed_id": "integer",
  "meeting_id": "integer",
  "option_count": "integer",
  "options": [
    "object"
  ],
  "reactions": [
    "object"
  ],
  "metadata": "object",
  "tags": [
    "string"
  ],
  "created_at": "string",
  "created_by_id": "integer",
  "modified_at": "string",
  "modified_by_id": "integer",
  "is_trashed": "boolean"
}

404 Not Found

400 Bad Request

Code sample
$ curl -X POST {WEAVY_SERVER}/api/messages/1/trash
-H "Authorization: Bearer {ACCESS-TOKEN | API-KEY}"

Restore message

Restore a message from the trash.

POST /api/messages/{id}/restore
Path parameters
id integer required

Id of the message to restore.

Response codes

200 Success

{
  "id": "integer",
  "app_id": "integer",
  "text": "string",
  "html": "string",
  "plain": "string",
  "attachment_count": "integer",
  "attachments": [
    "object"
  ],
  "embed_id": "integer",
  "meeting_id": "integer",
  "option_count": "integer",
  "options": [
    "object"
  ],
  "reactions": [
    "object"
  ],
  "metadata": "object",
  "tags": [
    "string"
  ],
  "created_at": "string",
  "created_by_id": "integer",
  "modified_at": "string",
  "modified_by_id": "integer",
  "is_trashed": "boolean"
}
Code sample
$ curl -X POST {WEAVY_SERVER}/api/messages/1/restore
-H "Authorization: Bearer {ACCESS-TOKEN | API-KEY}"

Indicate typing

Indicate that the authenticated user is typing a message.

PUT /api/apps/{id}/messages/typing
Path parameters
id integer required

Conversation (app) id.

Response codes

204 No Content

Code sample
$ curl -X PUT {WEAVY_SERVER}/api/apps/1/messages/typing
-H "Authorization: Bearer {ACCESS-TOKEN}"
Weavy Docs