POST graph.chat.messages
Create new messages, modify chats, dialogs and their participants
This method allows you to create new chat messages
Request example
?access_token=tkn18YdUJZe:CQABPOJKAKEKEKEKE
Sending messages
This is a key feature of this method.
To create a new message you need to send a POST-payload data with a message object which is similar to an object that you can get with me/messages/get method.
Text message example:
Sending messages with attachments
A message with image and file attachments can be sent.
A message with an IMAGE attachment can be sent like this:
A message with a FILE attachment can be sent like this:
More info about file uploading can be found here - graph.user.fileUploadUrl
Direct user messages
It is possible to send a message from group to a single or multiple users at once.
User must allow to receive group messages before it can be sent to him.
Following message syntax is used for this purpose:
Each user from the list will get a message in his own group-to-user chat.
API will respond with two corresponding list of values: * boolean type values list that indicate if message was or was not successfully sent; * list of user-to-group chat ids in which messages where sent.
To send a message directly to one user you can use a simplified message syntax:
Message format
Attachments
Message can contain a single or multiple attachments of following type:
- IMAGE - image;
- VIDEO - video;
- AUDIO - audio;
- SHARE - OK content reshare;
- FILE - file of any extension;
- CONTACT - user contact;
- INLINE_KEYBOARD - action buttons structure;
- LOCATION - user location;
- MUSIC - OK music track;
- CALL - information about video / audio call;
- PRESENT - OK present;
- STICKER - OK sticker.
Attachment’s payload depends on its type and can differ.
IMAGE
The image attachment.
There are following ways to send such attachment to a chat:
- specify token from existing message with attachment
- specify token, acquired during image upload using method GET graph.user.fileUploadUrl method
- specify image URL, but only 1 such image can be present in request
VIDEO
The video attachment.
There are following ways to send such attachment to a chat:
- specify token from existing message with attachment
- specify token, acquired during video upload using method GET graph.user.fileUploadUrl method
AUDIO
The audio attachment.
There are following ways to send such attachment to a chat:
- specify token from existing message with attachment
- specify token, acquired during audio upload using method GET graph.user.fileUploadUrl method
FILE
File of any format.
There are following ways to send such attachment to a chat:
- specify token from existing message with attachment
- specify token, acquired during audio upload using method GET graph.user.fileUploadUrl method
SHARE
Reshare of a content previously published on OK. This attachment can contain a link to a group, video, group / user topic, image, etc.
Creation of this type of attachment via botapi is not supported.
CONTACT
OK’s user contact.
There are following ways to send such attachment to a chat:
- specify user identifier
- specify vCard electronic business card data
LOCATION
User’s location.
There are following ways to send such attachment to a chat:
- specify coordinates latitude and longitude (other fields are optional)
MUSIC
OK music track.
There are following ways to send such attachment to a chat:
- specify track identifier
CALL
Video/audio call info.
Creation of this type of attachment via botapi is not supported.
PRESENT
This type of attachment is currently not supported
OK present.
Creation of this type of attachment via botapi is not supported.
STICKER
OK sticker.
There are following ways to send such attachment to a chat:
- specify sticker identifier
INLINE_KEYBOARD
REQUEST_GEO_LOCATION and REQUEST_CONTACT type buttons are currently not supported
Buttons structure.
Buttons list is a two dimensional array where buttons can be placed one on a single line or as a group.
There are following buttons types supported:
- CALLBACK - main type of a button. When pressed by a user a new message is sent to a chat (called callback message);
- LINK - a button that contains a link to another URL;
- REQUEST_CONTACT - request of current user’s contact info;
- REQUEST_GEO_LOCATION - request of current user’s location info.