versión API Graph

Reacciones de objeto

Esta referencia describe el perímetro /reactions común a varios nodos de API Graph. La estructura y las operaciones son las mismas para cada nodo. Los objetos siguientes tienen un perímetro /reactions:

Lectura

Obtén reacciones sobre un objeto.

Consulta las estadísticas para obtener más información sobre las reacciones de páginas y publicaciones.

Nueva experiencia de las páginas

La nueva experiencia de página admite este extremo.

Requisitos

Aplicaciones de marketing

  • ads_management
  • pages_read_engagement
  • pages_show_list

Aplicaciones de administración de páginas

  • pages_show_list

Ejemplo de solicitud

El siguiente ejemplo es una solicitud GET realizada por un usuario que reaccionó a su propio objeto.

curl -i -X GET \
 "https://graph.facebook.com/your-post-id/reactions?access_token=your-user-access-token"
GraphRequest request = GraphRequest.newGraphPathRequest(
  accessToken,
  "/your-post-id/reactions",
  new GraphRequest.Callback() {
    @Override
    public void onCompleted(GraphResponse response) {
      // Insert your code here
    }
});

request.executeAsync();
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
    initWithGraphPath:@"/your-post-id/reactions"
           parameters:nil
           HTTPMethod:@"GET"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
    // Insert your code here
}];
FB.api(
  '/your-post-id/reactions',
  'GET',
  {},
  function(response) {
      // Insert your code here
  }
);
try {
  // Returns a `FacebookFacebookResponse` object
  $response = $fb->get(
    '/your-post-id/reactions',
    '{access-token}'
  );
} catch(FacebookExceptionsFacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(FacebookExceptionsFacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();

La respuesta JSON

{ "data": [ { "id": "your-user-id", "name": "Your Name", "type": "HAHA" } ], "paging": { "cursors": { "before": "QVFIUk5YbXFFbG8yVWVOa2w0ZAGhmSUNKMkZAZAOXZARbzJOMHM0TUFtZAnhJbWdPdkF4OURUTHJrQjFqQ2RQZAVN1UGxSVU5FWURENnE4OUFPeXFreU1jV09pdFJR", "after": "QVFIUkpsWVRkcVl6SlhsdWlrcGdudl8xVEhwVEJ5ZA3FXdG90bTRxam13NmJDUGpQVnB5ZA29lMG9FVmFaeU1BLW1hc2oZD" } } } 

Si el usuario o la página no han reaccionado al objeto de la consulta, el elemento data estará vacío.

En el ejemplo siguiente se incluye una solicitud GET para recuperar el total de reacciones de un objeto.

curl -i -X GET \
 "https://graph.facebook.com/your-post-id
   ?fields=reactions.summary(total_count)
   &access_token=your-access-token"
GraphRequest request = GraphRequest.newGraphPathRequest(
  accessToken,
  "/your-post-id",
  new GraphRequest.Callback() {
    @Override
    public void onCompleted(GraphResponse response) {
      // Insert your code here
    }
});

Bundle parameters = new Bundle();
parameters.putString("fields", "reactions.summary(total_count)");
request.setParameters(parameters);
request.executeAsync();
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
    initWithGraphPath:@"/your-post-id"
           parameters:@{ @"fields": @"reactions.summary(total_count)",}
           HTTPMethod:@"GET"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
    // Insert your code here
}];
FB.api(
  '/your-post-id',
  'GET',
  {"fields":"reactions.summary(total_count)"},
  function(response) {
      // Insert your code here
  }
);
try {
  // Returns a `FacebookFacebookResponse` object
  $response = $fb->get(
    '/your-post-id',
    '{access-token}'
  );
} catch(FacebookExceptionsFacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(FacebookExceptionsFacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();

La respuesta JSON si el usuario o la página han reaccionado a su propio objeto.

{ "reactions": { "data": [ { "id": "your-user-id", "name": "Your Name", "type": "HAHA" } ], "paging": { "cursors": { "before": "QVFIUk5YbXFFbG8yVWVOa2w0ZAGhmSUNKMkZAZAOXZARbzJOMHM0TUFtZAnhJbWdPdkF4OURUTHJrQjFqQ2RQZAVN1UGxSVU5FWURENnE4OUFPeXFreU1jV09pdFJR", "after": "QVFIUkpsWVRkcVl6SlhsdWlrcGdudl8xVEhwVEJ5ZA3FXdG90bTRxam13NmJDUGpQVnB5ZA29lMG9FVmFaeU1BLW1hc2oZD" } }, "summary": { "total_count": 28 } }, "id": "your-post-id" } 

La respuesta JSON si el usuario o la página no han reaccionado a su propio objeto.

{ "reactions": { "data": [ ], "paging": { "cursors": { "before": "QVFIUk5YbXFFbG8yVWVOa2w0ZAGhmSUNKMkZAZAOXZARbzJOMHM0TUFtZAnhJbWdPdkF4OURUTHJrQjFqQ2RQZAVN1UGxSVU5FWURENnE4OUFPeXFreU1jV09pdFJR", "after": "QVFIUkpsWVRkcVl6SlhsdWlrcGdudl8xVEhwVEJ5ZA3FXdG90bTRxam13NmJDUGpQVnB5ZA29lMG9FVmFaeU1BLW1hc2oZD" } }, "summary": { "total_count": 28 } }, "id": "your-post-id" } 

Un usuario o una página solo pueden consultar sus propias reacciones. Las reacciones de otros usuarios y páginas no están disponibles por motivos de privacidad.

Los recuentos de reacciones "Me gusta" incluyen las reacciones "Me gusta" y "Me importa".

Parámetros

NombreDescripción

type

enum {NONE, LIKE, LOVE, WOW, HAHA, SORRY, ANGRY}

Tipo de reacción que una página o usuario añadieron a un objeto.

Campos

Una lectura desde este perímetro devolverá un resultado en formato JSON.

{ "data": [], "paging": {}, "summary": {} }

data

Se trata del perfil de la página o usuario que ejecutaron la consulta (si el objeto que se está consultando recibió la reacción de una página o un usuario) y una lista de los tipos de reacción:

CampoDescripción

type

enum {NONE, LIKE, LOVE, WOW, HAHA, SORRY, ANGRY}

Tipo de reacción que una página o usuario añadieron a un objeto.

En el caso de las reacciones a publicaciones, este perímetro no devuelve un perfil. No obstante, si lees las reacciones con un identificador de acceso de usuario, se devolverá el perfil del usuario actual.

Ver el recuento de una reacción individual

curl -i -X GET \
 "https://graph.facebook.com/your-object-id
   ?fields=reactions.type(LOVE).limit(0).summary(total_count)
   &access_token=your-access-token"
GraphRequest request = GraphRequest.newGraphPathRequest(
  accessToken,
  "/your-object-id",
  new GraphRequest.Callback() {
    @Override
    public void onCompleted(GraphResponse response) {
      // Insert your code here
    }
});

Bundle parameters = new Bundle();
parameters.putString("fields", "reactions.type(LOVE).limit(0).summary(total_count)");
request.setParameters(parameters);
request.executeAsync();
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
    initWithGraphPath:@"/your-object-id"
           parameters:@{ @"fields": @"reactions.type(LOVE).limit(0).summary(total_count)",}
           HTTPMethod:@"GET"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
    // Insert your code here
}];
FB.api(
  '/your-object-id',
  'GET',
  {"fields":"reactions.type(LOVE).limit(0).summary(total_count)"},
  function(response) {
      // Insert your code here
  }
);
try {
  // Returns a `FacebookFacebookResponse` object
  $response = $fb->get(
    '/your-object-id',
    '{access-token}'
  );
} catch(FacebookExceptionsFacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(FacebookExceptionsFacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}
$graphNode = $response->getGraphNode();

Ejemplo de JSON devuelto

{ "reactions": { "data": [ ], "summary": { "total_count": 3498 } }, "id": "your-object-id" } 

paging

Para obtener más detalles sobre la paginación, consulta la documentación sobre paginación de la API Graph. Si añades limit(0) a reactions, se eliminará el elemento paging del resultado.

summary

Información agregada sobre el perímetro; por ejemplo, recuentos. Especifica los campos que se deben recuperar en el parámetro "summary" (p. ej., summary=total_count).

CampoDescripción

total_count

entero de 32 bits sin firmar

Número total de reacciones

viewer_reaction

enum {NONE, LIKE, LOVE, WOW, HAHA, SORRY, ANGRY}

Tipo de reacción que una página o usuario añadieron a un objeto.

Códigos de error

ErrorDescripción

100

Parámetro no válido

Creación

Esta operación no es compatible.

Actualizar

Esta operación no es compatible.

Eliminar

Esta operación no es compatible.