Home » Php » How to post message with message_tags field using Graph API in PHP

How to post message with message_tags field using Graph API in PHP

Posted by: admin July 12, 2020 Leave a comment


I want to post message with message_tags using Graph API.

I confirmed message only post in PHP, but don’t work with message_tags..

This is sample code.


$facebook = new Facebook(array(
  'appId'  => '127916833975***', // masked
  'secret' => 'a3271136ad68587d8e83171148f93***' // masked

$request_params = array('message' => mb_convert_encoding('test posting message', 'UTF-8', 'EUC-JP'));

$tags = array(
          'id' => '100000834278***', // masked
          'name' => 'MY_FRIENDS_NAME', // masked
          'offset' => 0,
          'length' => 15 // friend name length

$request_params['message_tags'] = $tags;
$facebook->api('/feed', 'POST', $request_params);

In document message_tags field,

object containing fields whose names are the indexes to where objects are 
mentioned in the message field; each field in turn is an array containing 
an object with id, name, offset, and length fields, where length is the 
length, within the message field, of the object mentioned


Allowed scopes are read_stream and publish_stream.

How to&Answers:

Apparently the message_tags can only be read via the API. Writing message_tags is not supported. See this bug report and facebook response from 11/22/2011.


add this line of code to auto-post your message to wall

if ($user) {
    $attachment =  array(
        //'access_token' => $access_token,
        'message' => "Amazing stuff by I just took part in their  by dragging and dropping items I would like to win, and who knows, I could get lucky!",
        'name' => "",
        'link' => "http://www.facebook.com/abc?sk=app_111111111111",
        'description' => "Pick your  and you could actually win all the items that you pick!",
        'picture'=> "http://www.abc.in/img/dp.png"
    $facebook->api('/me/feed', 'POST', $attachment);